From 798f1cb2514789d24676b118feafab872d27d838 Mon Sep 17 00:00:00 2001 From: keycloak-bot Date: Wed, 22 Jul 2020 08:59:17 +0000 Subject: [PATCH 01/30] Set version to 11.0.0 --- adapters/oidc/adapter-core/pom.xml | 2 +- adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml | 2 +- adapters/oidc/as7-eap6/as7-adapter/pom.xml | 2 +- adapters/oidc/as7-eap6/as7-subsystem/pom.xml | 2 +- adapters/oidc/as7-eap6/pom.xml | 2 +- adapters/oidc/fuse7/camel-undertow/pom.xml | 2 +- adapters/oidc/fuse7/jetty94/pom.xml | 2 +- adapters/oidc/fuse7/pom.xml | 2 +- adapters/oidc/fuse7/tomcat8/pom.xml | 2 +- adapters/oidc/fuse7/undertow/pom.xml | 2 +- adapters/oidc/installed/pom.xml | 2 +- adapters/oidc/jaxrs-oauth-client/pom.xml | 2 +- adapters/oidc/jetty/jetty-core/pom.xml | 2 +- adapters/oidc/jetty/jetty9.2/pom.xml | 2 +- adapters/oidc/jetty/jetty9.3/pom.xml | 2 +- adapters/oidc/jetty/jetty9.4/pom.xml | 2 +- adapters/oidc/jetty/pom.xml | 2 +- adapters/oidc/js/pom.xml | 2 +- adapters/oidc/kcinit/pom.xml | 2 +- adapters/oidc/osgi-adapter/pom.xml | 2 +- adapters/oidc/pom.xml | 2 +- adapters/oidc/servlet-filter/pom.xml | 2 +- adapters/oidc/spring-boot-adapter-core/pom.xml | 2 +- adapters/oidc/spring-boot-container-bundle/pom.xml | 2 +- adapters/oidc/spring-boot-legacy-container-bundle/pom.xml | 2 +- adapters/oidc/spring-boot/pom.xml | 2 +- adapters/oidc/spring-boot2/pom.xml | 2 +- adapters/oidc/spring-security/pom.xml | 2 +- adapters/oidc/tomcat/pom.xml | 2 +- adapters/oidc/tomcat/tomcat-core/pom.xml | 2 +- adapters/oidc/tomcat/tomcat/pom.xml | 2 +- adapters/oidc/tomcat/tomcat7/pom.xml | 2 +- adapters/oidc/undertow/pom.xml | 2 +- adapters/oidc/wildfly-elytron/pom.xml | 2 +- adapters/oidc/wildfly/pom.xml | 2 +- adapters/oidc/wildfly/wildfly-adapter/pom.xml | 2 +- adapters/oidc/wildfly/wildfly-subsystem/pom.xml | 2 +- adapters/pom.xml | 2 +- adapters/saml/as7-eap6/adapter/pom.xml | 2 +- adapters/saml/as7-eap6/pom.xml | 2 +- adapters/saml/as7-eap6/subsystem/pom.xml | 2 +- adapters/saml/core-public/pom.xml | 2 +- adapters/saml/core/pom.xml | 2 +- adapters/saml/jetty/jetty-core/pom.xml | 2 +- adapters/saml/jetty/jetty9.2/pom.xml | 2 +- adapters/saml/jetty/jetty9.3/pom.xml | 2 +- adapters/saml/jetty/jetty9.4/pom.xml | 2 +- adapters/saml/jetty/pom.xml | 2 +- adapters/saml/pom.xml | 2 +- adapters/saml/servlet-filter/pom.xml | 2 +- adapters/saml/tomcat/pom.xml | 2 +- adapters/saml/tomcat/tomcat-core/pom.xml | 2 +- adapters/saml/tomcat/tomcat/pom.xml | 2 +- adapters/saml/tomcat/tomcat7/pom.xml | 2 +- adapters/saml/undertow/pom.xml | 2 +- adapters/saml/wildfly-elytron/pom.xml | 2 +- adapters/saml/wildfly/pom.xml | 2 +- adapters/saml/wildfly/wildfly-adapter/pom.xml | 2 +- adapters/saml/wildfly/wildfly-subsystem/pom.xml | 2 +- adapters/spi/adapter-spi/pom.xml | 2 +- adapters/spi/jboss-adapter-core/pom.xml | 2 +- adapters/spi/jetty-adapter-spi/pom.xml | 2 +- adapters/spi/pom.xml | 2 +- adapters/spi/servlet-adapter-spi/pom.xml | 2 +- adapters/spi/tomcat-adapter-spi/pom.xml | 2 +- adapters/spi/undertow-adapter-spi/pom.xml | 2 +- authz/client/pom.xml | 2 +- authz/policy/common/pom.xml | 2 +- authz/policy/pom.xml | 2 +- authz/pom.xml | 2 +- boms/adapter/pom.xml | 2 +- boms/misc/pom.xml | 2 +- boms/pom.xml | 2 +- boms/spi/pom.xml | 2 +- common/pom.xml | 2 +- core/pom.xml | 2 +- dependencies/pom.xml | 2 +- dependencies/server-all/pom.xml | 2 +- dependencies/server-min/pom.xml | 2 +- distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml | 2 +- distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml | 2 +- .../adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml | 2 +- distribution/adapters/as7-eap6-adapter/pom.xml | 2 +- distribution/adapters/fuse-adapter-zip/pom.xml | 2 +- distribution/adapters/jetty92-adapter-zip/pom.xml | 2 +- distribution/adapters/jetty93-adapter-zip/pom.xml | 2 +- distribution/adapters/jetty94-adapter-zip/pom.xml | 2 +- distribution/adapters/js-adapter-npm-zip/pom.xml | 2 +- distribution/adapters/js-adapter-zip/pom.xml | 2 +- distribution/adapters/osgi/features/pom.xml | 2 +- distribution/adapters/osgi/jaas/pom.xml | 2 +- distribution/adapters/osgi/pom.xml | 2 +- distribution/adapters/pom.xml | 2 +- distribution/adapters/tomcat-adapter-zip/pom.xml | 2 +- distribution/adapters/tomcat7-adapter-zip/pom.xml | 2 +- distribution/adapters/wildfly-adapter/pom.xml | 2 +- distribution/api-docs-dist/pom.xml | 2 +- distribution/downloads/pom.xml | 2 +- distribution/examples-dist/pom.xml | 2 +- distribution/feature-packs/adapter-feature-pack/pom.xml | 2 +- distribution/feature-packs/pom.xml | 2 +- distribution/feature-packs/server-feature-pack/pom.xml | 2 +- distribution/licenses-common/pom.xml | 2 +- distribution/maven-plugins/licenses-processor/pom.xml | 2 +- distribution/maven-plugins/pom.xml | 2 +- distribution/pom.xml | 2 +- .../saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml | 2 +- .../saml-adapters/as7-eap6-adapter/as7-modules/pom.xml | 2 +- .../saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/as7-eap6-adapter/pom.xml | 2 +- distribution/saml-adapters/jetty92-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/jetty93-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/jetty94-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/pom.xml | 2 +- distribution/saml-adapters/tomcat-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/tomcat7-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/wildfly-adapter/pom.xml | 2 +- .../saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml | 2 +- .../saml-adapters/wildfly-adapter/wildfly-modules/pom.xml | 2 +- distribution/server-dist/pom.xml | 2 +- distribution/server-overlay/pom.xml | 2 +- distribution/server-x/pom.xml | 2 +- examples/admin-client/pom.xml | 2 +- examples/basic-auth/pom.xml | 2 +- examples/broker/facebook-authentication/pom.xml | 2 +- examples/broker/google-authentication/pom.xml | 2 +- examples/broker/pom.xml | 2 +- examples/broker/saml-broker-authentication/pom.xml | 2 +- examples/broker/twitter-authentication/pom.xml | 2 +- examples/cors/angular-product-app/pom.xml | 2 +- examples/cors/database-service/pom.xml | 2 +- examples/cors/pom.xml | 2 +- examples/demo-template/admin-access-app/pom.xml | 2 +- examples/demo-template/angular-product-app/pom.xml | 2 +- examples/demo-template/customer-app-cli/pom.xml | 2 +- examples/demo-template/customer-app-filter/pom.xml | 2 +- examples/demo-template/customer-app-js/pom.xml | 2 +- examples/demo-template/customer-app/pom.xml | 2 +- examples/demo-template/database-service/pom.xml | 2 +- examples/demo-template/example-ear/pom.xml | 2 +- examples/demo-template/offline-access-app/pom.xml | 2 +- examples/demo-template/pom.xml | 2 +- examples/demo-template/product-app/pom.xml | 2 +- examples/demo-template/service-account/pom.xml | 2 +- examples/js-console/pom.xml | 2 +- examples/kerberos/pom.xml | 2 +- examples/ldap/pom.xml | 2 +- examples/multi-tenant/pom.xml | 2 +- examples/pom.xml | 2 +- examples/providers/authenticator/pom.xml | 2 +- examples/providers/domain-extension/pom.xml | 2 +- examples/providers/pom.xml | 2 +- examples/providers/rest/pom.xml | 2 +- examples/saml/pom.xml | 2 +- examples/saml/post-with-encryption/pom.xml | 2 +- examples/saml/post-with-signature/pom.xml | 2 +- examples/saml/redirect-with-signature/pom.xml | 2 +- examples/saml/servlet-filter/pom.xml | 2 +- examples/themes/pom.xml | 2 +- federation/kerberos/pom.xml | 2 +- federation/ldap/pom.xml | 2 +- federation/pom.xml | 2 +- federation/sssd/pom.xml | 2 +- integration/admin-client/pom.xml | 2 +- integration/client-cli/admin-cli/pom.xml | 2 +- integration/client-cli/client-cli-dist/pom.xml | 2 +- integration/client-cli/client-registration-cli/pom.xml | 2 +- integration/client-cli/pom.xml | 2 +- integration/client-registration/pom.xml | 2 +- integration/pom.xml | 2 +- misc/keycloak-test-helper/pom.xml | 2 +- misc/pom.xml | 2 +- misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml | 2 +- misc/spring-boot-starter/pom.xml | 2 +- .../keycloak-legacy-spring-boot-starter/pom.xml | 2 +- misc/spring-legacy-boot-starter/pom.xml | 2 +- model/infinispan/pom.xml | 2 +- model/jpa/pom.xml | 2 +- model/map/pom.xml | 2 +- model/pom.xml | 2 +- pom.xml | 2 +- quarkus/deployment/pom.xml | 2 +- quarkus/pom.xml | 2 +- quarkus/runtime/pom.xml | 2 +- quarkus/server/pom.xml | 2 +- release-details | 3 +++ saml-core-api/pom.xml | 2 +- saml-core/pom.xml | 2 +- server-spi-private/pom.xml | 2 +- server-spi/pom.xml | 2 +- services/pom.xml | 2 +- testsuite/db-allocator-plugin/pom.xml | 2 +- testsuite/integration-arquillian/pom.xml | 2 +- .../servers/app-server/app-server-spi/pom.xml | 2 +- .../servers/app-server/jboss/eap/pom.xml | 2 +- .../servers/app-server/jboss/eap6/pom.xml | 2 +- .../integration-arquillian/servers/app-server/jboss/pom.xml | 2 +- .../servers/app-server/jboss/relative/eap/pom.xml | 2 +- .../servers/app-server/jboss/relative/pom.xml | 2 +- .../servers/app-server/jboss/relative/wildfly/pom.xml | 2 +- .../servers/app-server/jboss/wildfly-deprecated/pom.xml | 2 +- .../servers/app-server/jboss/wildfly/pom.xml | 2 +- .../integration-arquillian/servers/app-server/jetty/92/pom.xml | 2 +- .../integration-arquillian/servers/app-server/jetty/93/pom.xml | 2 +- .../integration-arquillian/servers/app-server/jetty/94/pom.xml | 2 +- .../servers/app-server/jetty/common/pom.xml | 2 +- .../integration-arquillian/servers/app-server/jetty/pom.xml | 2 +- .../servers/app-server/karaf/fuse63/pom.xml | 2 +- .../servers/app-server/karaf/fuse7x/pom.xml | 2 +- .../integration-arquillian/servers/app-server/karaf/pom.xml | 2 +- testsuite/integration-arquillian/servers/app-server/pom.xml | 2 +- .../servers/app-server/tomcat/common/pom.xml | 2 +- .../integration-arquillian/servers/app-server/tomcat/pom.xml | 2 +- .../servers/app-server/tomcat/tomcat7/pom.xml | 2 +- .../servers/app-server/tomcat/tomcat8/pom.xml | 2 +- .../servers/app-server/tomcat/tomcat9/pom.xml | 2 +- .../integration-arquillian/servers/app-server/undertow/pom.xml | 2 +- .../servers/auth-server/jboss/eap/pom.xml | 2 +- .../servers/auth-server/jboss/legacy/pom.xml | 2 +- .../integration-arquillian/servers/auth-server/jboss/pom.xml | 2 +- .../servers/auth-server/jboss/wildfly/pom.xml | 2 +- testsuite/integration-arquillian/servers/auth-server/pom.xml | 2 +- .../integration-arquillian/servers/auth-server/quarkus/pom.xml | 2 +- .../servers/auth-server/services/pom.xml | 2 +- .../servers/auth-server/services/testsuite-providers/pom.xml | 2 +- .../servers/auth-server/undertow/pom.xml | 2 +- .../servers/cache-server/jboss/infinispan/pom.xml | 2 +- .../servers/cache-server/jboss/jdg/pom.xml | 2 +- .../integration-arquillian/servers/cache-server/jboss/pom.xml | 2 +- testsuite/integration-arquillian/servers/cache-server/pom.xml | 2 +- testsuite/integration-arquillian/servers/migration/pom.xml | 2 +- testsuite/integration-arquillian/servers/pom.xml | 2 +- .../integration-arquillian/test-apps/app-profile-jee/pom.xml | 2 +- .../test-apps/cors/angular-product/pom.xml | 2 +- .../test-apps/cors/database-service/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/cors/pom.xml | 2 +- .../test-apps/fuse/camel-fuse7-undertow/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml | 2 +- .../test-apps/fuse/customer-app-fuse/pom.xml | 2 +- .../test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml | 2 +- .../integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml | 2 +- .../test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml | 2 +- .../integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml | 2 +- .../test-apps/fuse/external-config/pom.xml | 2 +- .../integration-arquillian/test-apps/fuse/features/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/fuse/pom.xml | 2 +- .../test-apps/fuse/product-app-fuse/pom.xml | 2 +- .../test-apps/fuse/product-app-fuse7-undertow/pom.xml | 2 +- .../test-apps/hello-world-authz-service/pom.xml | 2 +- .../test-apps/photoz/photoz-html5-client/pom.xml | 2 +- .../test-apps/photoz/photoz-restful-api/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/photoz/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/pom.xml | 2 +- .../integration-arquillian/test-apps/servlet-authz/pom.xml | 2 +- .../test-apps/servlet-policy-enforcer/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/servlets/pom.xml | 2 +- .../test-apps/spring-boot-adapter-app/pom.xml | 2 +- .../integration-arquillian/test-apps/test-apps-dist/pom.xml | 2 +- testsuite/integration-arquillian/tests/base/pom.xml | 2 +- .../integration-arquillian/tests/other/adapters/jboss/pom.xml | 2 +- .../tests/other/adapters/jboss/relative/eap/pom.xml | 2 +- .../tests/other/adapters/jboss/relative/pom.xml | 2 +- .../tests/other/adapters/jboss/relative/wildfly/pom.xml | 2 +- .../tests/other/adapters/jboss/remote/pom.xml | 2 +- .../tests/other/adapters/karaf/fuse61/pom.xml | 2 +- .../tests/other/adapters/karaf/fuse62/pom.xml | 2 +- .../tests/other/adapters/karaf/karaf3/pom.xml | 2 +- .../integration-arquillian/tests/other/adapters/karaf/pom.xml | 2 +- testsuite/integration-arquillian/tests/other/adapters/pom.xml | 2 +- .../integration-arquillian/tests/other/adapters/was/pom.xml | 2 +- .../tests/other/adapters/was/was8/pom.xml | 2 +- .../integration-arquillian/tests/other/adapters/wls/pom.xml | 2 +- .../tests/other/adapters/wls/wls12/pom.xml | 2 +- testsuite/integration-arquillian/tests/other/base-ui/pom.xml | 2 +- .../integration-arquillian/tests/other/clean-start/pom.xml | 2 +- testsuite/integration-arquillian/tests/other/console/pom.xml | 2 +- .../integration-arquillian/tests/other/jpa-performance/pom.xml | 2 +- .../integration-arquillian/tests/other/mod_auth_mellon/pom.xml | 2 +- testsuite/integration-arquillian/tests/other/pom.xml | 2 +- .../tests/other/server-config-migration/pom.xml | 2 +- .../tests/other/springboot-tests/pom.xml | 2 +- testsuite/integration-arquillian/tests/other/sssd/pom.xml | 2 +- testsuite/integration-arquillian/tests/pom.xml | 2 +- testsuite/integration-arquillian/util/pom.xml | 2 +- testsuite/performance/infinispan/pom.xml | 2 +- testsuite/performance/keycloak/pom.xml | 2 +- testsuite/performance/load-balancer/wildfly-modcluster/pom.xml | 2 +- testsuite/performance/pom.xml | 2 +- testsuite/performance/tests/pom.xml | 2 +- testsuite/pom.xml | 2 +- testsuite/utils/pom.xml | 2 +- themes/pom.xml | 2 +- util/embedded-ldap/pom.xml | 2 +- util/pom.xml | 2 +- wildfly/adduser/pom.xml | 2 +- wildfly/extensions/pom.xml | 2 +- wildfly/pom.xml | 2 +- wildfly/server-subsystem/pom.xml | 2 +- 298 files changed, 300 insertions(+), 297 deletions(-) create mode 100644 release-details diff --git a/adapters/oidc/adapter-core/pom.xml b/adapters/oidc/adapter-core/pom.xml index 65e4313b9d9b..e12ad7e91f07 100755 --- a/adapters/oidc/adapter-core/pom.xml +++ b/adapters/oidc/adapter-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml b/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml index 7fc86b865a6a..29ebdca13e24 100755 --- a/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml +++ b/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-as7-integration-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/adapters/oidc/as7-eap6/as7-adapter/pom.xml b/adapters/oidc/as7-eap6/as7-adapter/pom.xml index e8c6c803f59b..99f06dbd307a 100755 --- a/adapters/oidc/as7-eap6/as7-adapter/pom.xml +++ b/adapters/oidc/as7-eap6/as7-adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-as7-integration-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/adapters/oidc/as7-eap6/as7-subsystem/pom.xml b/adapters/oidc/as7-eap6/as7-subsystem/pom.xml index 72260d2a7b17..735f218b3d56 100755 --- a/adapters/oidc/as7-eap6/as7-subsystem/pom.xml +++ b/adapters/oidc/as7-eap6/as7-subsystem/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-as7-integration-pom - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/adapters/oidc/as7-eap6/pom.xml b/adapters/oidc/as7-eap6/pom.xml index 7822ebac35e5..9224b900f788 100755 --- a/adapters/oidc/as7-eap6/pom.xml +++ b/adapters/oidc/as7-eap6/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml Keycloak AS7 / JBoss EAP 6 Integration diff --git a/adapters/oidc/fuse7/camel-undertow/pom.xml b/adapters/oidc/fuse7/camel-undertow/pom.xml index e86e192529af..92f1fb10586f 100644 --- a/adapters/oidc/fuse7/camel-undertow/pom.xml +++ b/adapters/oidc/fuse7/camel-undertow/pom.xml @@ -21,7 +21,7 @@ keycloak-fuse7-integration-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/adapters/oidc/fuse7/jetty94/pom.xml b/adapters/oidc/fuse7/jetty94/pom.xml index 1e1b2ff12bed..32652faa136a 100644 --- a/adapters/oidc/fuse7/jetty94/pom.xml +++ b/adapters/oidc/fuse7/jetty94/pom.xml @@ -21,7 +21,7 @@ keycloak-fuse7-integration-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/adapters/oidc/fuse7/pom.xml b/adapters/oidc/fuse7/pom.xml index 56a011ef935a..860cbad99760 100644 --- a/adapters/oidc/fuse7/pom.xml +++ b/adapters/oidc/fuse7/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/fuse7/tomcat8/pom.xml b/adapters/oidc/fuse7/tomcat8/pom.xml index 36c21c6da9e4..03aafcfd9a34 100644 --- a/adapters/oidc/fuse7/tomcat8/pom.xml +++ b/adapters/oidc/fuse7/tomcat8/pom.xml @@ -21,7 +21,7 @@ keycloak-fuse7-integration-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/adapters/oidc/fuse7/undertow/pom.xml b/adapters/oidc/fuse7/undertow/pom.xml index 74e5208b2564..cd5aec814bdc 100644 --- a/adapters/oidc/fuse7/undertow/pom.xml +++ b/adapters/oidc/fuse7/undertow/pom.xml @@ -21,7 +21,7 @@ keycloak-fuse7-integration-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/adapters/oidc/installed/pom.xml b/adapters/oidc/installed/pom.xml index c7dafd3c30b6..fb6f8b4cdea2 100755 --- a/adapters/oidc/installed/pom.xml +++ b/adapters/oidc/installed/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jaxrs-oauth-client/pom.xml b/adapters/oidc/jaxrs-oauth-client/pom.xml index 03a2408c1016..5ca8762a9eff 100755 --- a/adapters/oidc/jaxrs-oauth-client/pom.xml +++ b/adapters/oidc/jaxrs-oauth-client/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jetty/jetty-core/pom.xml b/adapters/oidc/jetty/jetty-core/pom.xml index 3a114076fc0a..049d50c40d20 100755 --- a/adapters/oidc/jetty/jetty-core/pom.xml +++ b/adapters/oidc/jetty/jetty-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jetty/jetty9.2/pom.xml b/adapters/oidc/jetty/jetty9.2/pom.xml index 6ebe0c29d29a..ecc54b85bcc5 100755 --- a/adapters/oidc/jetty/jetty9.2/pom.xml +++ b/adapters/oidc/jetty/jetty9.2/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jetty/jetty9.3/pom.xml b/adapters/oidc/jetty/jetty9.3/pom.xml index 8f058d973160..3886d941208f 100644 --- a/adapters/oidc/jetty/jetty9.3/pom.xml +++ b/adapters/oidc/jetty/jetty9.3/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jetty/jetty9.4/pom.xml b/adapters/oidc/jetty/jetty9.4/pom.xml index 732f0c42f444..93eee9a489db 100644 --- a/adapters/oidc/jetty/jetty9.4/pom.xml +++ b/adapters/oidc/jetty/jetty9.4/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jetty/pom.xml b/adapters/oidc/jetty/pom.xml index b57b03da6caa..76d68e50cd90 100755 --- a/adapters/oidc/jetty/pom.xml +++ b/adapters/oidc/jetty/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml Keycloak Jetty Integration diff --git a/adapters/oidc/js/pom.xml b/adapters/oidc/js/pom.xml index 2ccb207228df..7a99ac84e74d 100755 --- a/adapters/oidc/js/pom.xml +++ b/adapters/oidc/js/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/kcinit/pom.xml b/adapters/oidc/kcinit/pom.xml index cae2f5151771..a26c19b91ec3 100755 --- a/adapters/oidc/kcinit/pom.xml +++ b/adapters/oidc/kcinit/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/osgi-adapter/pom.xml b/adapters/oidc/osgi-adapter/pom.xml index b686fba3144f..f3847dc33165 100755 --- a/adapters/oidc/osgi-adapter/pom.xml +++ b/adapters/oidc/osgi-adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/pom.xml b/adapters/oidc/pom.xml index 0d14e170c54b..4df76bc95100 100755 --- a/adapters/oidc/pom.xml +++ b/adapters/oidc/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../pom.xml Keycloak OIDC Client Adapter Modules diff --git a/adapters/oidc/servlet-filter/pom.xml b/adapters/oidc/servlet-filter/pom.xml index fbb25d65e226..23a3a46f88b8 100755 --- a/adapters/oidc/servlet-filter/pom.xml +++ b/adapters/oidc/servlet-filter/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/spring-boot-adapter-core/pom.xml b/adapters/oidc/spring-boot-adapter-core/pom.xml index 3b3036e4ace4..0e8075e370c4 100755 --- a/adapters/oidc/spring-boot-adapter-core/pom.xml +++ b/adapters/oidc/spring-boot-adapter-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/spring-boot-container-bundle/pom.xml b/adapters/oidc/spring-boot-container-bundle/pom.xml index c9ffb1e8e143..7797b16fd8e1 100644 --- a/adapters/oidc/spring-boot-container-bundle/pom.xml +++ b/adapters/oidc/spring-boot-container-bundle/pom.xml @@ -4,7 +4,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml spring-boot-container-bundle diff --git a/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml b/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml index 89b9b8bd74de..280521d4f0f8 100644 --- a/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml +++ b/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml @@ -4,7 +4,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml spring-boot-legacy-container-bundle diff --git a/adapters/oidc/spring-boot/pom.xml b/adapters/oidc/spring-boot/pom.xml index a64ed0df2b91..493e11962ecb 100755 --- a/adapters/oidc/spring-boot/pom.xml +++ b/adapters/oidc/spring-boot/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/spring-boot2/pom.xml b/adapters/oidc/spring-boot2/pom.xml index 8b794055145d..580d88f4bd06 100755 --- a/adapters/oidc/spring-boot2/pom.xml +++ b/adapters/oidc/spring-boot2/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/spring-security/pom.xml b/adapters/oidc/spring-security/pom.xml index 8d8c8121e74c..7c2db21d48c8 100755 --- a/adapters/oidc/spring-security/pom.xml +++ b/adapters/oidc/spring-security/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/tomcat/pom.xml b/adapters/oidc/tomcat/pom.xml index 186ec9fced12..0e4623d4231b 100755 --- a/adapters/oidc/tomcat/pom.xml +++ b/adapters/oidc/tomcat/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml Keycloak Tomcat Integration diff --git a/adapters/oidc/tomcat/tomcat-core/pom.xml b/adapters/oidc/tomcat/tomcat-core/pom.xml index 60aed87fc9cb..480341205053 100755 --- a/adapters/oidc/tomcat/tomcat-core/pom.xml +++ b/adapters/oidc/tomcat/tomcat-core/pom.xml @@ -21,7 +21,7 @@ keycloak-tomcat-integration-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/adapters/oidc/tomcat/tomcat/pom.xml b/adapters/oidc/tomcat/tomcat/pom.xml index 19b9ce6f8e3b..61e3fb1f9ec0 100755 --- a/adapters/oidc/tomcat/tomcat/pom.xml +++ b/adapters/oidc/tomcat/tomcat/pom.xml @@ -21,7 +21,7 @@ keycloak-tomcat-integration-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/adapters/oidc/tomcat/tomcat7/pom.xml b/adapters/oidc/tomcat/tomcat7/pom.xml index 9965dddd2116..09875b6fc51c 100755 --- a/adapters/oidc/tomcat/tomcat7/pom.xml +++ b/adapters/oidc/tomcat/tomcat7/pom.xml @@ -21,7 +21,7 @@ keycloak-tomcat-integration-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/adapters/oidc/undertow/pom.xml b/adapters/oidc/undertow/pom.xml index 68402e2a6c95..b17fe1cb089b 100755 --- a/adapters/oidc/undertow/pom.xml +++ b/adapters/oidc/undertow/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/wildfly-elytron/pom.xml b/adapters/oidc/wildfly-elytron/pom.xml index b55a13c531ca..b606615a1689 100755 --- a/adapters/oidc/wildfly-elytron/pom.xml +++ b/adapters/oidc/wildfly-elytron/pom.xml @@ -22,7 +22,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/wildfly/pom.xml b/adapters/oidc/wildfly/pom.xml index cedacf5c578c..c15c4b680eb3 100755 --- a/adapters/oidc/wildfly/pom.xml +++ b/adapters/oidc/wildfly/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml Keycloak WildFly Integration diff --git a/adapters/oidc/wildfly/wildfly-adapter/pom.xml b/adapters/oidc/wildfly/wildfly-adapter/pom.xml index a75694bb85bd..268cc373c7a0 100644 --- a/adapters/oidc/wildfly/wildfly-adapter/pom.xml +++ b/adapters/oidc/wildfly/wildfly-adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml 4.0.0 diff --git a/adapters/oidc/wildfly/wildfly-subsystem/pom.xml b/adapters/oidc/wildfly/wildfly-subsystem/pom.xml index 1b655f638cf2..13945cbd301e 100755 --- a/adapters/oidc/wildfly/wildfly-subsystem/pom.xml +++ b/adapters/oidc/wildfly/wildfly-subsystem/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-parent - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml diff --git a/adapters/pom.xml b/adapters/pom.xml index c90260e02dde..a9e1a83d9590 100755 --- a/adapters/pom.xml +++ b/adapters/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml Keycloak Adapters diff --git a/adapters/saml/as7-eap6/adapter/pom.xml b/adapters/saml/as7-eap6/adapter/pom.xml index d056ca2b2578..1fb611e2357d 100755 --- a/adapters/saml/as7-eap6/adapter/pom.xml +++ b/adapters/saml/as7-eap6/adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-saml-eap-integration-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/adapters/saml/as7-eap6/pom.xml b/adapters/saml/as7-eap6/pom.xml index ce0e0cfc0524..6c8cf4049922 100755 --- a/adapters/saml/as7-eap6/pom.xml +++ b/adapters/saml/as7-eap6/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml Keycloak SAML EAP Integration diff --git a/adapters/saml/as7-eap6/subsystem/pom.xml b/adapters/saml/as7-eap6/subsystem/pom.xml index b3932dcbb9fa..ee178f58e7f7 100755 --- a/adapters/saml/as7-eap6/subsystem/pom.xml +++ b/adapters/saml/as7-eap6/subsystem/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-saml-eap-integration-pom - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/adapters/saml/core-public/pom.xml b/adapters/saml/core-public/pom.xml index 4f103b786796..8bd41480613b 100755 --- a/adapters/saml/core-public/pom.xml +++ b/adapters/saml/core-public/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/saml/core/pom.xml b/adapters/saml/core/pom.xml index 70c1ef2f7e7b..5548f3c31f16 100755 --- a/adapters/saml/core/pom.xml +++ b/adapters/saml/core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/saml/jetty/jetty-core/pom.xml b/adapters/saml/jetty/jetty-core/pom.xml index 94965b1afa5c..948385294238 100755 --- a/adapters/saml/jetty/jetty-core/pom.xml +++ b/adapters/saml/jetty/jetty-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml 4.0.0 diff --git a/adapters/saml/jetty/jetty9.2/pom.xml b/adapters/saml/jetty/jetty9.2/pom.xml index 0602804bfd1b..94172666724b 100755 --- a/adapters/saml/jetty/jetty9.2/pom.xml +++ b/adapters/saml/jetty/jetty9.2/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml 4.0.0 diff --git a/adapters/saml/jetty/jetty9.3/pom.xml b/adapters/saml/jetty/jetty9.3/pom.xml index 46c16a01e7cb..6c7d21e95c4d 100644 --- a/adapters/saml/jetty/jetty9.3/pom.xml +++ b/adapters/saml/jetty/jetty9.3/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml 4.0.0 diff --git a/adapters/saml/jetty/jetty9.4/pom.xml b/adapters/saml/jetty/jetty9.4/pom.xml index 11807f0b0a06..e06e1acce90b 100644 --- a/adapters/saml/jetty/jetty9.4/pom.xml +++ b/adapters/saml/jetty/jetty9.4/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml 4.0.0 diff --git a/adapters/saml/jetty/pom.xml b/adapters/saml/jetty/pom.xml index 8c7225b07731..9ae87dbe10d8 100755 --- a/adapters/saml/jetty/pom.xml +++ b/adapters/saml/jetty/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml Keycloak SAML Jetty Integration diff --git a/adapters/saml/pom.xml b/adapters/saml/pom.xml index 3ef7d9d6f044..67a331609f72 100755 --- a/adapters/saml/pom.xml +++ b/adapters/saml/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../pom.xml Keycloak SAML Client Adapter Modules diff --git a/adapters/saml/servlet-filter/pom.xml b/adapters/saml/servlet-filter/pom.xml index c7126393a613..89e5cab26cef 100755 --- a/adapters/saml/servlet-filter/pom.xml +++ b/adapters/saml/servlet-filter/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/saml/tomcat/pom.xml b/adapters/saml/tomcat/pom.xml index 75c5b9b451cb..ff230da3059e 100755 --- a/adapters/saml/tomcat/pom.xml +++ b/adapters/saml/tomcat/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml Keycloak SAML Tomcat Integration diff --git a/adapters/saml/tomcat/tomcat-core/pom.xml b/adapters/saml/tomcat/tomcat-core/pom.xml index d2d6e7e324d8..759d1fccdc4e 100755 --- a/adapters/saml/tomcat/tomcat-core/pom.xml +++ b/adapters/saml/tomcat/tomcat-core/pom.xml @@ -21,7 +21,7 @@ keycloak-saml-tomcat-integration-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/adapters/saml/tomcat/tomcat/pom.xml b/adapters/saml/tomcat/tomcat/pom.xml index c089919c722b..ae742430d072 100755 --- a/adapters/saml/tomcat/tomcat/pom.xml +++ b/adapters/saml/tomcat/tomcat/pom.xml @@ -21,7 +21,7 @@ keycloak-saml-tomcat-integration-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/adapters/saml/tomcat/tomcat7/pom.xml b/adapters/saml/tomcat/tomcat7/pom.xml index b4a985c55e36..986b1c3bca08 100755 --- a/adapters/saml/tomcat/tomcat7/pom.xml +++ b/adapters/saml/tomcat/tomcat7/pom.xml @@ -21,7 +21,7 @@ keycloak-saml-tomcat-integration-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/adapters/saml/undertow/pom.xml b/adapters/saml/undertow/pom.xml index 8f4ad60405b7..753463c0942a 100755 --- a/adapters/saml/undertow/pom.xml +++ b/adapters/saml/undertow/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/saml/wildfly-elytron/pom.xml b/adapters/saml/wildfly-elytron/pom.xml index b602e9e44948..f321cb5dc49c 100755 --- a/adapters/saml/wildfly-elytron/pom.xml +++ b/adapters/saml/wildfly-elytron/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/saml/wildfly/pom.xml b/adapters/saml/wildfly/pom.xml index 0b91605de6bc..29e15446bff3 100755 --- a/adapters/saml/wildfly/pom.xml +++ b/adapters/saml/wildfly/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml Keycloak SAML Wildfly Integration diff --git a/adapters/saml/wildfly/wildfly-adapter/pom.xml b/adapters/saml/wildfly/wildfly-adapter/pom.xml index d5a64670d491..df81440c048f 100755 --- a/adapters/saml/wildfly/wildfly-adapter/pom.xml +++ b/adapters/saml/wildfly/wildfly-adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml 4.0.0 diff --git a/adapters/saml/wildfly/wildfly-subsystem/pom.xml b/adapters/saml/wildfly/wildfly-subsystem/pom.xml index 1e7e233eede9..7731452607ce 100755 --- a/adapters/saml/wildfly/wildfly-subsystem/pom.xml +++ b/adapters/saml/wildfly/wildfly-subsystem/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-parent - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml diff --git a/adapters/spi/adapter-spi/pom.xml b/adapters/spi/adapter-spi/pom.xml index a6b21f4dddbc..0a2c40637881 100755 --- a/adapters/spi/adapter-spi/pom.xml +++ b/adapters/spi/adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/spi/jboss-adapter-core/pom.xml b/adapters/spi/jboss-adapter-core/pom.xml index 58669a9c46c4..918f2d65f469 100755 --- a/adapters/spi/jboss-adapter-core/pom.xml +++ b/adapters/spi/jboss-adapter-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/spi/jetty-adapter-spi/pom.xml b/adapters/spi/jetty-adapter-spi/pom.xml index fe842b7699fe..57dabbb23bcd 100755 --- a/adapters/spi/jetty-adapter-spi/pom.xml +++ b/adapters/spi/jetty-adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/spi/pom.xml b/adapters/spi/pom.xml index 59da2346d935..163dd47b78f9 100755 --- a/adapters/spi/pom.xml +++ b/adapters/spi/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../pom.xml Keycloak Client Adapter SPI Modules diff --git a/adapters/spi/servlet-adapter-spi/pom.xml b/adapters/spi/servlet-adapter-spi/pom.xml index 2ca2c43b0179..2a68ece635a9 100755 --- a/adapters/spi/servlet-adapter-spi/pom.xml +++ b/adapters/spi/servlet-adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/spi/tomcat-adapter-spi/pom.xml b/adapters/spi/tomcat-adapter-spi/pom.xml index a6de5b49c106..f50ca5fbd1b8 100755 --- a/adapters/spi/tomcat-adapter-spi/pom.xml +++ b/adapters/spi/tomcat-adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/adapters/spi/undertow-adapter-spi/pom.xml b/adapters/spi/undertow-adapter-spi/pom.xml index ec61898cd842..bae0b42518ce 100755 --- a/adapters/spi/undertow-adapter-spi/pom.xml +++ b/adapters/spi/undertow-adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml 4.0.0 diff --git a/authz/client/pom.xml b/authz/client/pom.xml index eb58e7ded191..0c4ceff4cf51 100644 --- a/authz/client/pom.xml +++ b/authz/client/pom.xml @@ -7,7 +7,7 @@ org.keycloak keycloak-authz-parent - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/authz/policy/common/pom.xml b/authz/policy/common/pom.xml index 32ca573ccc3d..299fffd9e878 100644 --- a/authz/policy/common/pom.xml +++ b/authz/policy/common/pom.xml @@ -25,7 +25,7 @@ org.keycloak keycloak-authz-provider-parent - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/authz/policy/pom.xml b/authz/policy/pom.xml index 1ecefff1cc83..66f268f43200 100644 --- a/authz/policy/pom.xml +++ b/authz/policy/pom.xml @@ -7,7 +7,7 @@ org.keycloak keycloak-authz-parent - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/authz/pom.xml b/authz/pom.xml index 144c2770534f..14fc05245fe5 100644 --- a/authz/pom.xml +++ b/authz/pom.xml @@ -7,7 +7,7 @@ org.keycloak keycloak-parent - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/boms/adapter/pom.xml b/boms/adapter/pom.xml index 2d24c4cac4d7..0a2f11ab96f7 100644 --- a/boms/adapter/pom.xml +++ b/boms/adapter/pom.xml @@ -22,7 +22,7 @@ org.keycloak.bom keycloak-bom-parent - 11.0.0-SNAPSHOT + 11.0.0 org.keycloak.bom diff --git a/boms/misc/pom.xml b/boms/misc/pom.xml index 4e72b3f958d5..81ecb5185171 100644 --- a/boms/misc/pom.xml +++ b/boms/misc/pom.xml @@ -22,7 +22,7 @@ org.keycloak.bom keycloak-bom-parent - 11.0.0-SNAPSHOT + 11.0.0 org.keycloak.bom diff --git a/boms/pom.xml b/boms/pom.xml index 248d2935e534..0d2fa2a61ecb 100644 --- a/boms/pom.xml +++ b/boms/pom.xml @@ -26,7 +26,7 @@ org.keycloak.bom keycloak-bom-parent - 11.0.0-SNAPSHOT + 11.0.0 pom diff --git a/boms/spi/pom.xml b/boms/spi/pom.xml index 684fa7d6d40f..c092efa66e23 100644 --- a/boms/spi/pom.xml +++ b/boms/spi/pom.xml @@ -23,7 +23,7 @@ org.keycloak.bom keycloak-bom-parent - 11.0.0-SNAPSHOT + 11.0.0 org.keycloak.bom diff --git a/common/pom.xml b/common/pom.xml index 93cca86645c6..93f39640f8be 100755 --- a/common/pom.xml +++ b/common/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/core/pom.xml b/core/pom.xml index 137839db64df..94c61edcf575 100755 --- a/core/pom.xml +++ b/core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/dependencies/pom.xml b/dependencies/pom.xml index 5233e5512522..b4fe44b6bd4c 100755 --- a/dependencies/pom.xml +++ b/dependencies/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/dependencies/server-all/pom.xml b/dependencies/server-all/pom.xml index f216f51ce056..c7d559594a0f 100755 --- a/dependencies/server-all/pom.xml +++ b/dependencies/server-all/pom.xml @@ -21,7 +21,7 @@ keycloak-dependencies-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/dependencies/server-min/pom.xml b/dependencies/server-min/pom.xml index 3444b79baa95..b0f729fff3a2 100755 --- a/dependencies/server-min/pom.xml +++ b/dependencies/server-min/pom.xml @@ -21,7 +21,7 @@ keycloak-dependencies-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml b/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml index f45b299ceada..8d8465b95136 100755 --- a/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml +++ b/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml diff --git a/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml b/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml index 989e4f21c906..94f1cd5ac779 100755 --- a/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml +++ b/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml @@ -25,7 +25,7 @@ keycloak-as7-eap6-adapter-dist-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml b/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml index eab0d6cce818..66ea05356e8e 100755 --- a/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml +++ b/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-as7-eap6-adapter-dist-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/distribution/adapters/as7-eap6-adapter/pom.xml b/distribution/adapters/as7-eap6-adapter/pom.xml index 431ff223832b..da16d4391fd0 100644 --- a/distribution/adapters/as7-eap6-adapter/pom.xml +++ b/distribution/adapters/as7-eap6-adapter/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml Keycloak AS7 / JBoss EAP 6 Adapter Distros diff --git a/distribution/adapters/fuse-adapter-zip/pom.xml b/distribution/adapters/fuse-adapter-zip/pom.xml index 6e9da9c517f8..d6012eeb75db 100644 --- a/distribution/adapters/fuse-adapter-zip/pom.xml +++ b/distribution/adapters/fuse-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml diff --git a/distribution/adapters/jetty92-adapter-zip/pom.xml b/distribution/adapters/jetty92-adapter-zip/pom.xml index 6e7e24f7fcfa..f122bf5282b1 100755 --- a/distribution/adapters/jetty92-adapter-zip/pom.xml +++ b/distribution/adapters/jetty92-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml diff --git a/distribution/adapters/jetty93-adapter-zip/pom.xml b/distribution/adapters/jetty93-adapter-zip/pom.xml index 8f97413c414e..36a66509542d 100644 --- a/distribution/adapters/jetty93-adapter-zip/pom.xml +++ b/distribution/adapters/jetty93-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml diff --git a/distribution/adapters/jetty94-adapter-zip/pom.xml b/distribution/adapters/jetty94-adapter-zip/pom.xml index 15c9984d91d5..cc0597b6658c 100644 --- a/distribution/adapters/jetty94-adapter-zip/pom.xml +++ b/distribution/adapters/jetty94-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml diff --git a/distribution/adapters/js-adapter-npm-zip/pom.xml b/distribution/adapters/js-adapter-npm-zip/pom.xml index 35a1b0354fa4..ca8f440374b8 100755 --- a/distribution/adapters/js-adapter-npm-zip/pom.xml +++ b/distribution/adapters/js-adapter-npm-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml diff --git a/distribution/adapters/js-adapter-zip/pom.xml b/distribution/adapters/js-adapter-zip/pom.xml index 191a38fbd303..9e32bcf45c37 100755 --- a/distribution/adapters/js-adapter-zip/pom.xml +++ b/distribution/adapters/js-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml diff --git a/distribution/adapters/osgi/features/pom.xml b/distribution/adapters/osgi/features/pom.xml index 70797030186d..be7c5b4276df 100755 --- a/distribution/adapters/osgi/features/pom.xml +++ b/distribution/adapters/osgi/features/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml Keycloak OSGI Features diff --git a/distribution/adapters/osgi/jaas/pom.xml b/distribution/adapters/osgi/jaas/pom.xml index efa6b1987009..aa08d03004b1 100755 --- a/distribution/adapters/osgi/jaas/pom.xml +++ b/distribution/adapters/osgi/jaas/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml Keycloak OSGI JAAS Realm Configuration diff --git a/distribution/adapters/osgi/pom.xml b/distribution/adapters/osgi/pom.xml index 3fe988536bf7..5906ef2a95e3 100755 --- a/distribution/adapters/osgi/pom.xml +++ b/distribution/adapters/osgi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml Keycloak OSGI Integration diff --git a/distribution/adapters/pom.xml b/distribution/adapters/pom.xml index f29b5064f1d3..17bc327b697b 100755 --- a/distribution/adapters/pom.xml +++ b/distribution/adapters/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Adapters Distribution Parent diff --git a/distribution/adapters/tomcat-adapter-zip/pom.xml b/distribution/adapters/tomcat-adapter-zip/pom.xml index d2e34e2ab93b..989142987e18 100755 --- a/distribution/adapters/tomcat-adapter-zip/pom.xml +++ b/distribution/adapters/tomcat-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml diff --git a/distribution/adapters/tomcat7-adapter-zip/pom.xml b/distribution/adapters/tomcat7-adapter-zip/pom.xml index 6fe03f1b5759..53611cae696a 100755 --- a/distribution/adapters/tomcat7-adapter-zip/pom.xml +++ b/distribution/adapters/tomcat7-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml diff --git a/distribution/adapters/wildfly-adapter/pom.xml b/distribution/adapters/wildfly-adapter/pom.xml index f9d9d02ba3a6..33a0c7efc77a 100644 --- a/distribution/adapters/wildfly-adapter/pom.xml +++ b/distribution/adapters/wildfly-adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-adapters-distribution-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 keycloak-wildfly-adapter-dist diff --git a/distribution/api-docs-dist/pom.xml b/distribution/api-docs-dist/pom.xml index 068ccc3bdf8f..88f91abeb29a 100755 --- a/distribution/api-docs-dist/pom.xml +++ b/distribution/api-docs-dist/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 keycloak-api-docs-dist diff --git a/distribution/downloads/pom.xml b/distribution/downloads/pom.xml index 846dc5fea255..51dd170bac7c 100755 --- a/distribution/downloads/pom.xml +++ b/distribution/downloads/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 keycloak-dist-downloads diff --git a/distribution/examples-dist/pom.xml b/distribution/examples-dist/pom.xml index c0f65b98c4ca..b41749e92370 100755 --- a/distribution/examples-dist/pom.xml +++ b/distribution/examples-dist/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 keycloak-examples-dist diff --git a/distribution/feature-packs/adapter-feature-pack/pom.xml b/distribution/feature-packs/adapter-feature-pack/pom.xml index e802831971ab..8803764eaa9c 100755 --- a/distribution/feature-packs/adapter-feature-pack/pom.xml +++ b/distribution/feature-packs/adapter-feature-pack/pom.xml @@ -19,7 +19,7 @@ org.keycloak feature-packs-parent - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/distribution/feature-packs/pom.xml b/distribution/feature-packs/pom.xml index 5e97a954613c..e6cba0a2b2e6 100644 --- a/distribution/feature-packs/pom.xml +++ b/distribution/feature-packs/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Feature Pack Builds diff --git a/distribution/feature-packs/server-feature-pack/pom.xml b/distribution/feature-packs/server-feature-pack/pom.xml index fec2d22cd369..6b133d9eb293 100644 --- a/distribution/feature-packs/server-feature-pack/pom.xml +++ b/distribution/feature-packs/server-feature-pack/pom.xml @@ -19,7 +19,7 @@ org.keycloak feature-packs-parent - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/distribution/licenses-common/pom.xml b/distribution/licenses-common/pom.xml index 53051fd16ed3..7d9833a70611 100644 --- a/distribution/licenses-common/pom.xml +++ b/distribution/licenses-common/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 keycloak-distribution-licenses-common diff --git a/distribution/maven-plugins/licenses-processor/pom.xml b/distribution/maven-plugins/licenses-processor/pom.xml index ece332300523..968cc86a6c17 100644 --- a/distribution/maven-plugins/licenses-processor/pom.xml +++ b/distribution/maven-plugins/licenses-processor/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-maven-plugins-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 keycloak-distribution-licenses-maven-plugin diff --git a/distribution/maven-plugins/pom.xml b/distribution/maven-plugins/pom.xml index 2fab36397ca4..59fa9abdb9aa 100644 --- a/distribution/maven-plugins/pom.xml +++ b/distribution/maven-plugins/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 keycloak-distribution-maven-plugins-parent diff --git a/distribution/pom.xml b/distribution/pom.xml index e7c81e41a251..641f67e99d1f 100755 --- a/distribution/pom.xml +++ b/distribution/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml index 97bd912dad0a..2c39ed946496 100755 --- a/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml +++ b/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml diff --git a/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml index 5953471014c1..5b4ce528d634 100755 --- a/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml +++ b/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml @@ -25,7 +25,7 @@ keycloak-saml-as7-eap6-adapter-dist-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml index 6da525fa219a..d1a665307e10 100755 --- a/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml +++ b/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-saml-as7-eap6-adapter-dist-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/distribution/saml-adapters/as7-eap6-adapter/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/pom.xml index 0bce976e477f..f7dd3f74cde9 100755 --- a/distribution/saml-adapters/as7-eap6-adapter/pom.xml +++ b/distribution/saml-adapters/as7-eap6-adapter/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml Keycloak SAML AS7 / JBoss EAP 6 Adapter Distros diff --git a/distribution/saml-adapters/jetty92-adapter-zip/pom.xml b/distribution/saml-adapters/jetty92-adapter-zip/pom.xml index 9d66489d8220..f3f94d544936 100755 --- a/distribution/saml-adapters/jetty92-adapter-zip/pom.xml +++ b/distribution/saml-adapters/jetty92-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml diff --git a/distribution/saml-adapters/jetty93-adapter-zip/pom.xml b/distribution/saml-adapters/jetty93-adapter-zip/pom.xml index bf6d08035992..7e48907e0419 100644 --- a/distribution/saml-adapters/jetty93-adapter-zip/pom.xml +++ b/distribution/saml-adapters/jetty93-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml diff --git a/distribution/saml-adapters/jetty94-adapter-zip/pom.xml b/distribution/saml-adapters/jetty94-adapter-zip/pom.xml index b20e2671c4ba..807b81a954a1 100644 --- a/distribution/saml-adapters/jetty94-adapter-zip/pom.xml +++ b/distribution/saml-adapters/jetty94-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml diff --git a/distribution/saml-adapters/pom.xml b/distribution/saml-adapters/pom.xml index dbdacfe8982b..330c329e97d6 100755 --- a/distribution/saml-adapters/pom.xml +++ b/distribution/saml-adapters/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 SAML Adapters Distribution Parent diff --git a/distribution/saml-adapters/tomcat-adapter-zip/pom.xml b/distribution/saml-adapters/tomcat-adapter-zip/pom.xml index 74e2aaac1359..440ac46f92f0 100755 --- a/distribution/saml-adapters/tomcat-adapter-zip/pom.xml +++ b/distribution/saml-adapters/tomcat-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml diff --git a/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml b/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml index 5360a27b01aa..44cc3ce80691 100755 --- a/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml +++ b/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml diff --git a/distribution/saml-adapters/wildfly-adapter/pom.xml b/distribution/saml-adapters/wildfly-adapter/pom.xml index 71cfecf6a8a2..7cd9d181a561 100755 --- a/distribution/saml-adapters/wildfly-adapter/pom.xml +++ b/distribution/saml-adapters/wildfly-adapter/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../pom.xml Keycloak Wildfly SAML Adapter diff --git a/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml b/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml index a9e47aabda51..cf7c1e80c4b9 100755 --- a/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml +++ b/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml diff --git a/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml b/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml index 73b307063795..b625d4dfcff8 100755 --- a/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml +++ b/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml @@ -25,7 +25,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../../../pom.xml diff --git a/distribution/server-dist/pom.xml b/distribution/server-dist/pom.xml index 2be9ada67746..107b44dffbe8 100755 --- a/distribution/server-dist/pom.xml +++ b/distribution/server-dist/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 keycloak-server-dist diff --git a/distribution/server-overlay/pom.xml b/distribution/server-overlay/pom.xml index 7dcfd15ff1f7..266dd37d0199 100755 --- a/distribution/server-overlay/pom.xml +++ b/distribution/server-overlay/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 keycloak-server-overlay diff --git a/distribution/server-x/pom.xml b/distribution/server-x/pom.xml index 64da567ef002..1bb0c751bfc8 100755 --- a/distribution/server-x/pom.xml +++ b/distribution/server-x/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 keycloak-server-x diff --git a/examples/admin-client/pom.xml b/examples/admin-client/pom.xml index c56276412d6b..e7795879c620 100755 --- a/examples/admin-client/pom.xml +++ b/examples/admin-client/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Keycloak Examples - Admin Client diff --git a/examples/basic-auth/pom.xml b/examples/basic-auth/pom.xml index 024912db1a33..0b2ce40c706a 100755 --- a/examples/basic-auth/pom.xml +++ b/examples/basic-auth/pom.xml @@ -23,7 +23,7 @@ keycloak-examples-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Keycloak Examples - Basic Auth diff --git a/examples/broker/facebook-authentication/pom.xml b/examples/broker/facebook-authentication/pom.xml index b71f1ff7906a..8cacfacf282a 100755 --- a/examples/broker/facebook-authentication/pom.xml +++ b/examples/broker/facebook-authentication/pom.xml @@ -23,7 +23,7 @@ keycloak-examples-broker-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Keycloak Broker Examples - Facebook Authentication diff --git a/examples/broker/google-authentication/pom.xml b/examples/broker/google-authentication/pom.xml index 94f290a8bde9..085ad48cb96f 100755 --- a/examples/broker/google-authentication/pom.xml +++ b/examples/broker/google-authentication/pom.xml @@ -23,7 +23,7 @@ keycloak-examples-broker-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Keycloak Broker Examples - Google Authentication diff --git a/examples/broker/pom.xml b/examples/broker/pom.xml index 04252a9bbe57..ee59995be333 100755 --- a/examples/broker/pom.xml +++ b/examples/broker/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Broker Examples diff --git a/examples/broker/saml-broker-authentication/pom.xml b/examples/broker/saml-broker-authentication/pom.xml index 69c95f462494..6263600514b9 100755 --- a/examples/broker/saml-broker-authentication/pom.xml +++ b/examples/broker/saml-broker-authentication/pom.xml @@ -23,7 +23,7 @@ keycloak-examples-broker-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Keycloak Broker Examples - SAML Identity Provider Brokering diff --git a/examples/broker/twitter-authentication/pom.xml b/examples/broker/twitter-authentication/pom.xml index 80ed4f1bfbdf..56c28b00c97e 100755 --- a/examples/broker/twitter-authentication/pom.xml +++ b/examples/broker/twitter-authentication/pom.xml @@ -23,7 +23,7 @@ keycloak-examples-broker-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Keycloak Broker Examples - Twitter Authentication diff --git a/examples/cors/angular-product-app/pom.xml b/examples/cors/angular-product-app/pom.xml index 7763d94f85b0..c18aab6aeba3 100755 --- a/examples/cors/angular-product-app/pom.xml +++ b/examples/cors/angular-product-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-cors-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/examples/cors/database-service/pom.xml b/examples/cors/database-service/pom.xml index 27710c3d1cb6..1d90b0c5f6e9 100755 --- a/examples/cors/database-service/pom.xml +++ b/examples/cors/database-service/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-cors-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/examples/cors/pom.xml b/examples/cors/pom.xml index c65178c87700..1cdfe630bb2b 100755 --- a/examples/cors/pom.xml +++ b/examples/cors/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Keycloak Examples - CORS diff --git a/examples/demo-template/admin-access-app/pom.xml b/examples/demo-template/admin-access-app/pom.xml index f9d19b0ba6f0..7db01f503d73 100755 --- a/examples/demo-template/admin-access-app/pom.xml +++ b/examples/demo-template/admin-access-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/examples/demo-template/angular-product-app/pom.xml b/examples/demo-template/angular-product-app/pom.xml index de50baa52c79..f1271ed772dc 100755 --- a/examples/demo-template/angular-product-app/pom.xml +++ b/examples/demo-template/angular-product-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/examples/demo-template/customer-app-cli/pom.xml b/examples/demo-template/customer-app-cli/pom.xml index 7391bb2915c3..a84b8988176d 100755 --- a/examples/demo-template/customer-app-cli/pom.xml +++ b/examples/demo-template/customer-app-cli/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/examples/demo-template/customer-app-filter/pom.xml b/examples/demo-template/customer-app-filter/pom.xml index 6a8312259a88..7e26cf44a865 100755 --- a/examples/demo-template/customer-app-filter/pom.xml +++ b/examples/demo-template/customer-app-filter/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/examples/demo-template/customer-app-js/pom.xml b/examples/demo-template/customer-app-js/pom.xml index 4e64f584d30d..e98ec80e4380 100755 --- a/examples/demo-template/customer-app-js/pom.xml +++ b/examples/demo-template/customer-app-js/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/examples/demo-template/customer-app/pom.xml b/examples/demo-template/customer-app/pom.xml index 248424af5a84..46b58c864377 100755 --- a/examples/demo-template/customer-app/pom.xml +++ b/examples/demo-template/customer-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/examples/demo-template/database-service/pom.xml b/examples/demo-template/database-service/pom.xml index 4a49de4f5234..6dd95292c8eb 100755 --- a/examples/demo-template/database-service/pom.xml +++ b/examples/demo-template/database-service/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/examples/demo-template/example-ear/pom.xml b/examples/demo-template/example-ear/pom.xml index bd45c574fcee..445044c845b0 100755 --- a/examples/demo-template/example-ear/pom.xml +++ b/examples/demo-template/example-ear/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/examples/demo-template/offline-access-app/pom.xml b/examples/demo-template/offline-access-app/pom.xml index 6434fd848ed1..b6ff3069e9bb 100755 --- a/examples/demo-template/offline-access-app/pom.xml +++ b/examples/demo-template/offline-access-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/examples/demo-template/pom.xml b/examples/demo-template/pom.xml index 91d61da08bda..6c3c87249234 100755 --- a/examples/demo-template/pom.xml +++ b/examples/demo-template/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Demo Examples diff --git a/examples/demo-template/product-app/pom.xml b/examples/demo-template/product-app/pom.xml index 3d6149e5f930..09fb7f4c2cd5 100755 --- a/examples/demo-template/product-app/pom.xml +++ b/examples/demo-template/product-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/examples/demo-template/service-account/pom.xml b/examples/demo-template/service-account/pom.xml index 0c050ed31178..951fc868e5e7 100755 --- a/examples/demo-template/service-account/pom.xml +++ b/examples/demo-template/service-account/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/examples/js-console/pom.xml b/examples/js-console/pom.xml index 27a936f4128e..d2bff26fce8f 100755 --- a/examples/js-console/pom.xml +++ b/examples/js-console/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/examples/kerberos/pom.xml b/examples/kerberos/pom.xml index 645586541ef3..2c09c37dbb2e 100755 --- a/examples/kerberos/pom.xml +++ b/examples/kerberos/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Keycloak Examples - Kerberos Credential Delegation diff --git a/examples/ldap/pom.xml b/examples/ldap/pom.xml index eb368894afb0..d684223a4483 100644 --- a/examples/ldap/pom.xml +++ b/examples/ldap/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/examples/multi-tenant/pom.xml b/examples/multi-tenant/pom.xml index 0860000cd0f0..874a831a6767 100755 --- a/examples/multi-tenant/pom.xml +++ b/examples/multi-tenant/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Keycloak Examples - Multi Tenant diff --git a/examples/pom.xml b/examples/pom.xml index 171e9cf520e6..1f262dc4ea1f 100755 --- a/examples/pom.xml +++ b/examples/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Keycloak Examples diff --git a/examples/providers/authenticator/pom.xml b/examples/providers/authenticator/pom.xml index e3c26cb74cc4..0d2178e7e643 100755 --- a/examples/providers/authenticator/pom.xml +++ b/examples/providers/authenticator/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-providers-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Authenticator Example diff --git a/examples/providers/domain-extension/pom.xml b/examples/providers/domain-extension/pom.xml index 4fc4172d1a0f..126b3c0d2b21 100755 --- a/examples/providers/domain-extension/pom.xml +++ b/examples/providers/domain-extension/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-providers-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Domain Extension Example diff --git a/examples/providers/pom.xml b/examples/providers/pom.xml index ad77623aeca8..a8317128d8f3 100755 --- a/examples/providers/pom.xml +++ b/examples/providers/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Provider Examples diff --git a/examples/providers/rest/pom.xml b/examples/providers/rest/pom.xml index acb859fc1cad..18ac440a377e 100755 --- a/examples/providers/rest/pom.xml +++ b/examples/providers/rest/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-providers-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 REST Example diff --git a/examples/saml/pom.xml b/examples/saml/pom.xml index e021f553254d..e58c7da41050 100755 --- a/examples/saml/pom.xml +++ b/examples/saml/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 SAML Examples diff --git a/examples/saml/post-with-encryption/pom.xml b/examples/saml/post-with-encryption/pom.xml index 019a5bf0e31d..c8679bccf797 100755 --- a/examples/saml/post-with-encryption/pom.xml +++ b/examples/saml/post-with-encryption/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-saml-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 saml-post-encryption diff --git a/examples/saml/post-with-signature/pom.xml b/examples/saml/post-with-signature/pom.xml index ab32a0b270e1..e47c16593ddf 100755 --- a/examples/saml/post-with-signature/pom.xml +++ b/examples/saml/post-with-signature/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-saml-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 sales-post-sig diff --git a/examples/saml/redirect-with-signature/pom.xml b/examples/saml/redirect-with-signature/pom.xml index c42244ead82b..ba71f6f14488 100755 --- a/examples/saml/redirect-with-signature/pom.xml +++ b/examples/saml/redirect-with-signature/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-saml-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 saml-redirect-signatures diff --git a/examples/saml/servlet-filter/pom.xml b/examples/saml/servlet-filter/pom.xml index 1329859169de..3edbb05d5eaa 100755 --- a/examples/saml/servlet-filter/pom.xml +++ b/examples/saml/servlet-filter/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-saml-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 saml-servlet-filter diff --git a/examples/themes/pom.xml b/examples/themes/pom.xml index 556d9c7a2e41..3132e25a3cd4 100755 --- a/examples/themes/pom.xml +++ b/examples/themes/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Themes Examples diff --git a/federation/kerberos/pom.xml b/federation/kerberos/pom.xml index f6cc7a1be374..56df95351ef8 100755 --- a/federation/kerberos/pom.xml +++ b/federation/kerberos/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../pom.xml 4.0.0 diff --git a/federation/ldap/pom.xml b/federation/ldap/pom.xml index 4f6b3cc285d5..b697a570a60c 100755 --- a/federation/ldap/pom.xml +++ b/federation/ldap/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../pom.xml 4.0.0 diff --git a/federation/pom.xml b/federation/pom.xml index c9946096b6e4..ecf08281d9b1 100755 --- a/federation/pom.xml +++ b/federation/pom.xml @@ -22,7 +22,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/federation/sssd/pom.xml b/federation/sssd/pom.xml index 70150dc7ceb2..58998d7eff5c 100644 --- a/federation/sssd/pom.xml +++ b/federation/sssd/pom.xml @@ -4,7 +4,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../pom.xml 4.0.0 diff --git a/integration/admin-client/pom.xml b/integration/admin-client/pom.xml index 88312b3bcc4e..8e2ce307967f 100755 --- a/integration/admin-client/pom.xml +++ b/integration/admin-client/pom.xml @@ -22,7 +22,7 @@ keycloak-integration-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/integration/client-cli/admin-cli/pom.xml b/integration/client-cli/admin-cli/pom.xml index 88b9f0818439..612c3955b68a 100755 --- a/integration/client-cli/admin-cli/pom.xml +++ b/integration/client-cli/admin-cli/pom.xml @@ -21,7 +21,7 @@ keycloak-client-cli-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/integration/client-cli/client-cli-dist/pom.xml b/integration/client-cli/client-cli-dist/pom.xml index 7cd6935f5ec2..207298207a10 100755 --- a/integration/client-cli/client-cli-dist/pom.xml +++ b/integration/client-cli/client-cli-dist/pom.xml @@ -21,7 +21,7 @@ keycloak-client-cli-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 keycloak-client-cli-dist diff --git a/integration/client-cli/client-registration-cli/pom.xml b/integration/client-cli/client-registration-cli/pom.xml index d99a7bbd0040..b9180d20bc32 100755 --- a/integration/client-cli/client-registration-cli/pom.xml +++ b/integration/client-cli/client-registration-cli/pom.xml @@ -21,7 +21,7 @@ keycloak-client-cli-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/integration/client-cli/pom.xml b/integration/client-cli/pom.xml index e74debb4e7d8..9a4e48ba39f4 100644 --- a/integration/client-cli/pom.xml +++ b/integration/client-cli/pom.xml @@ -20,7 +20,7 @@ keycloak-integration-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Keycloak Client CLI diff --git a/integration/client-registration/pom.xml b/integration/client-registration/pom.xml index 862d82a9cd8c..5711609f0d1b 100755 --- a/integration/client-registration/pom.xml +++ b/integration/client-registration/pom.xml @@ -21,7 +21,7 @@ keycloak-integration-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/integration/pom.xml b/integration/pom.xml index 74585e70c6ce..5ac6fa0d55b6 100755 --- a/integration/pom.xml +++ b/integration/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml Keycloak Integration diff --git a/misc/keycloak-test-helper/pom.xml b/misc/keycloak-test-helper/pom.xml index f004903a0c58..efa56b62ed70 100644 --- a/misc/keycloak-test-helper/pom.xml +++ b/misc/keycloak-test-helper/pom.xml @@ -6,7 +6,7 @@ keycloak-misc-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 org.keycloak keycloak-test-helper diff --git a/misc/pom.xml b/misc/pom.xml index 7ba8410bb643..01460dfc0092 100644 --- a/misc/pom.xml +++ b/misc/pom.xml @@ -3,7 +3,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Keycloak Misc diff --git a/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml b/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml index 5352612c0e5c..22d06d542df3 100644 --- a/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml +++ b/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml @@ -4,7 +4,7 @@ org.keycloak keycloak-spring-boot-starter-parent - 11.0.0-SNAPSHOT + 11.0.0 keycloak-spring-boot-starter Keycloak :: Spring :: Boot :: Default :: Starter diff --git a/misc/spring-boot-starter/pom.xml b/misc/spring-boot-starter/pom.xml index edb923206d2e..f6025e912e15 100644 --- a/misc/spring-boot-starter/pom.xml +++ b/misc/spring-boot-starter/pom.xml @@ -5,7 +5,7 @@ keycloak-misc-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 org.keycloak keycloak-spring-boot-starter-parent diff --git a/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml b/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml index 02fdb3ea2e1c..38e029a1c773 100644 --- a/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml +++ b/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml @@ -4,7 +4,7 @@ org.keycloak keycloak-legacy-spring-boot-starter-parent - 11.0.0-SNAPSHOT + 11.0.0 keycloak-legacy-spring-boot-starter Keycloak :: Legacy :: Spring :: Boot :: Default :: Starter diff --git a/misc/spring-legacy-boot-starter/pom.xml b/misc/spring-legacy-boot-starter/pom.xml index 82e18e752a4f..3f2dfa96559e 100644 --- a/misc/spring-legacy-boot-starter/pom.xml +++ b/misc/spring-legacy-boot-starter/pom.xml @@ -5,7 +5,7 @@ keycloak-misc-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 org.keycloak keycloak-legacy-spring-boot-starter-parent diff --git a/model/infinispan/pom.xml b/model/infinispan/pom.xml index ed58f20047ef..228467080b05 100755 --- a/model/infinispan/pom.xml +++ b/model/infinispan/pom.xml @@ -21,7 +21,7 @@ keycloak-model-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/model/jpa/pom.xml b/model/jpa/pom.xml index 872d67aad6f3..2f904b4f600b 100755 --- a/model/jpa/pom.xml +++ b/model/jpa/pom.xml @@ -21,7 +21,7 @@ keycloak-model-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/model/map/pom.xml b/model/map/pom.xml index d5b8ed8902a6..4736b6d9590e 100644 --- a/model/map/pom.xml +++ b/model/map/pom.xml @@ -3,7 +3,7 @@ keycloak-model-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/model/pom.xml b/model/pom.xml index 0721a5a4f06f..e8c6d71d32d1 100755 --- a/model/pom.xml +++ b/model/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml Keycloak Model Parent diff --git a/pom.xml b/pom.xml index 48647ea2c420..c8d227981f3c 100755 --- a/pom.xml +++ b/pom.xml @@ -31,7 +31,7 @@ org.keycloak keycloak-parent - 11.0.0-SNAPSHOT + 11.0.0 pom diff --git a/quarkus/deployment/pom.xml b/quarkus/deployment/pom.xml index 83a7b710968b..55f909e5991e 100644 --- a/quarkus/deployment/pom.xml +++ b/quarkus/deployment/pom.xml @@ -5,7 +5,7 @@ keycloak-quarkus-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/quarkus/pom.xml b/quarkus/pom.xml index 2bf32805ff3a..892b3b179059 100755 --- a/quarkus/pom.xml +++ b/quarkus/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml Keycloak Quarkus Parent diff --git a/quarkus/runtime/pom.xml b/quarkus/runtime/pom.xml index de3f8d55a8cc..7ee78c3377af 100644 --- a/quarkus/runtime/pom.xml +++ b/quarkus/runtime/pom.xml @@ -5,7 +5,7 @@ keycloak-quarkus-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/quarkus/server/pom.xml b/quarkus/server/pom.xml index 5cc5acfe55ce..91e7e41352e0 100644 --- a/quarkus/server/pom.xml +++ b/quarkus/server/pom.xml @@ -7,7 +7,7 @@ keycloak-quarkus-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/release-details b/release-details new file mode 100644 index 000000000000..b50ce4107ce1 --- /dev/null +++ b/release-details @@ -0,0 +1,3 @@ +VERSION=11.0.0 +SHORT_VERSION=11.0 +NPM_VERSION=11.0.0 diff --git a/saml-core-api/pom.xml b/saml-core-api/pom.xml index d7e2396e0005..cb17473a643b 100755 --- a/saml-core-api/pom.xml +++ b/saml-core-api/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/saml-core/pom.xml b/saml-core/pom.xml index 9ef609f4fd3a..09f4d9bb146d 100755 --- a/saml-core/pom.xml +++ b/saml-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/server-spi-private/pom.xml b/server-spi-private/pom.xml index 47b32c7f75a3..eacd2eefce07 100755 --- a/server-spi-private/pom.xml +++ b/server-spi-private/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/server-spi/pom.xml b/server-spi/pom.xml index 20123ffe61f7..a0d61be1fbda 100755 --- a/server-spi/pom.xml +++ b/server-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/services/pom.xml b/services/pom.xml index 9c181952293d..18d9e2584fc2 100755 --- a/services/pom.xml +++ b/services/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/testsuite/db-allocator-plugin/pom.xml b/testsuite/db-allocator-plugin/pom.xml index d7faf101a807..1e080c202084 100644 --- a/testsuite/db-allocator-plugin/pom.xml +++ b/testsuite/db-allocator-plugin/pom.xml @@ -22,7 +22,7 @@ keycloak-testsuite-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/pom.xml b/testsuite/integration-arquillian/pom.xml index 59da0c2b4b84..af3593615822 100644 --- a/testsuite/integration-arquillian/pom.xml +++ b/testsuite/integration-arquillian/pom.xml @@ -24,7 +24,7 @@ org.keycloak keycloak-testsuite-pom - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml b/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml index da3a451447f4..cf244972e77a 100644 --- a/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml index cf90757b0bf9..ff51b6a8747d 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml index 9351e75208fd..28f737e8d32d 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml index ea7e16515672..ccc836c6625c 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml @@ -22,7 +22,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml index 9e8c3a7d8c83..5232c9cd0151 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss-relative - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml index 63df2d72a6ce..226236c26bd3 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml index c915b4419322..73f3fc67b3a9 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss-relative - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml index 6f919530382d..d8a04f4b5931 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml index 67d5ebd9798d..1f3ab037c0ee 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml index 52e03f42d139..9262b7899626 100644 --- a/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jetty - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml index 16158bd12d25..b62d5f485ac0 100644 --- a/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jetty - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml index 6389cd1e0ca0..4b2d7688ad4b 100644 --- a/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jetty - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml index cd8d0c576a0f..9fa564aa0059 100644 --- a/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jetty - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml index 7fdbe4e3c9cf..13848e3c339d 100644 --- a/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml b/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml index f27e51b0ab5f..3d40bda7ae2a 100644 --- a/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-karaf - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml b/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml index 7cb4a9d64373..7c3e67ace6e3 100644 --- a/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-karaf - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml b/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml index 64ccd4f35ca6..cfef84f20843 100644 --- a/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/pom.xml b/testsuite/integration-arquillian/servers/app-server/pom.xml index 4fae41dbb1b8..38d144133585 100644 --- a/testsuite/integration-arquillian/servers/app-server/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml index bce615e18619..86c96f277adb 100644 --- a/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-servers-app-server-tomcat org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml index 1f8f6bd58159..1eafd24e153a 100644 --- a/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml index 06a8c0fce499..d648fced96fd 100644 --- a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-tomcat - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml index 2cdb5f088d5f..197d9e2ff7ba 100644 --- a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-tomcat - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml index 44bc617e927a..638d81b79680 100644 --- a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-tomcat - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml b/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml index e5a270a7d4b5..c264a3e0db21 100644 --- a/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml index 2ad51219d26c..ebb5ca69423a 100644 --- a/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server-jboss - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml index 0b56450990cf..74318adf7c20 100644 --- a/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server-jboss - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml index 7648d6a67b81..af065018a89d 100644 --- a/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml index 5065cb7125e6..a938d954b447 100644 --- a/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server-jboss - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/pom.xml b/testsuite/integration-arquillian/servers/auth-server/pom.xml index 9ee052ef33a7..6fb8fba0ce24 100644 --- a/testsuite/integration-arquillian/servers/auth-server/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml b/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml index 54767c69d0f5..f9c138ba1fb7 100644 --- a/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-servers-auth-server org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/services/pom.xml b/testsuite/integration-arquillian/servers/auth-server/services/pom.xml index af0a9a81f3b6..b44020c38d3b 100644 --- a/testsuite/integration-arquillian/servers/auth-server/services/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/services/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml b/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml index 8a805f3da46c..5522bc265173 100644 --- a/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server-services - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-testsuite-providers diff --git a/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml b/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml index 0dc474eaff8d..5bc6334a9555 100644 --- a/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml b/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml index 1b8b7561bbd4..4206df89e729 100644 --- a/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml +++ b/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-cache-server-jboss - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml b/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml index d95edea1fb50..6a3198a74da5 100644 --- a/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml +++ b/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-cache-server-jboss - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml b/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml index ae75fbf6acc2..b79e8c326a87 100644 --- a/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml +++ b/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-cache-server - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/cache-server/pom.xml b/testsuite/integration-arquillian/servers/cache-server/pom.xml index 5a3ca9dc6feb..05d42896a4ff 100644 --- a/testsuite/integration-arquillian/servers/cache-server/pom.xml +++ b/testsuite/integration-arquillian/servers/cache-server/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/migration/pom.xml b/testsuite/integration-arquillian/servers/migration/pom.xml index 1431430bc64c..094b635697a8 100644 --- a/testsuite/integration-arquillian/servers/migration/pom.xml +++ b/testsuite/integration-arquillian/servers/migration/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/servers/pom.xml b/testsuite/integration-arquillian/servers/pom.xml index af8451149f48..f37ddef19b06 100644 --- a/testsuite/integration-arquillian/servers/pom.xml +++ b/testsuite/integration-arquillian/servers/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml b/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml index a0b66805eb14..26fe8966ebfc 100644 --- a/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml +++ b/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml @@ -5,7 +5,7 @@ org.keycloak.testsuite integration-arquillian-test-apps - 11.0.0-SNAPSHOT + 11.0.0 keycloak-test-app-profile-jee diff --git a/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml b/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml index ee0525074994..ce07d1d22120 100755 --- a/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml +++ b/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-test-apps-cors-parent - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml b/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml index c234e29c7670..e12374de1f10 100755 --- a/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml +++ b/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-test-apps-cors-parent - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/cors/pom.xml b/testsuite/integration-arquillian/test-apps/cors/pom.xml index d76b4739d43e..7f1eefb713ed 100644 --- a/testsuite/integration-arquillian/test-apps/cors/pom.xml +++ b/testsuite/integration-arquillian/test-apps/cors/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-test-apps org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml index 1c78441ecc15..02a4b0a7c8f4 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml index 6edb3a5f9f26..fa144fb69cfd 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml index 4353f49c430a..c093df8efeaf 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml index 9f1e509847cc..66aa05f380e3 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml index bbf6ae1b2ba8..26d8f4bbe046 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml index 8cefdbd52f1c..28091c7103f7 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml index 8dd95bd5d163..146298387f72 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml index 478d25d6921f..f767fca9146e 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 Keycloak Examples - External Config diff --git a/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml index 4912d7351d6a..d3386c104721 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/pom.xml index 4883cb81d3e5..1f1168ced6d2 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/pom.xml @@ -20,7 +20,7 @@ integration-arquillian-test-apps org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 Fuse Test Applications diff --git a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml index 4bdfc2be284f..7b232c484a2e 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml index 9a0baa22d42b..59280f8d7fe5 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml b/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml index 1b979ff59f2d..7ac813a89df8 100755 --- a/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml +++ b/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-test-apps - 11.0.0-SNAPSHOT + 11.0.0 hello-world-authz-service diff --git a/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml b/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml index 0a7812b04911..0a1d1555f9a8 100755 --- a/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml +++ b/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml @@ -5,7 +5,7 @@ org.keycloak.testsuite integration-arquillian-test-apps-photoz-parent - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml b/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml index c15978a9b351..193b60de1ede 100755 --- a/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml +++ b/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml @@ -6,7 +6,7 @@ org.keycloak.testsuite integration-arquillian-test-apps-photoz-parent - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/testsuite/integration-arquillian/test-apps/photoz/pom.xml b/testsuite/integration-arquillian/test-apps/photoz/pom.xml index 8a6a3e75115b..06be533fcb89 100755 --- a/testsuite/integration-arquillian/test-apps/photoz/pom.xml +++ b/testsuite/integration-arquillian/test-apps/photoz/pom.xml @@ -6,7 +6,7 @@ org.keycloak.testsuite integration-arquillian-test-apps - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-test-apps-photoz-parent diff --git a/testsuite/integration-arquillian/test-apps/pom.xml b/testsuite/integration-arquillian/test-apps/pom.xml index 568d9c3339f0..8369107eb2c6 100644 --- a/testsuite/integration-arquillian/test-apps/pom.xml +++ b/testsuite/integration-arquillian/test-apps/pom.xml @@ -5,7 +5,7 @@ integration-arquillian org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml b/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml index 73bcdc1475be..37f0b429b9ff 100755 --- a/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml +++ b/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml @@ -6,7 +6,7 @@ org.keycloak.testsuite integration-arquillian-test-apps - 11.0.0-SNAPSHOT + 11.0.0 servlet-authz-app diff --git a/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml b/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml index a104244ae4e6..8b372ffe8941 100755 --- a/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml +++ b/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-test-apps - 11.0.0-SNAPSHOT + 11.0.0 servlet-policy-enforcer diff --git a/testsuite/integration-arquillian/test-apps/servlets/pom.xml b/testsuite/integration-arquillian/test-apps/servlets/pom.xml index 2a53ecfeb52c..36de7a89192e 100644 --- a/testsuite/integration-arquillian/test-apps/servlets/pom.xml +++ b/testsuite/integration-arquillian/test-apps/servlets/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-test-apps org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml b/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml index 501aa53fcf60..ae36cd1f7e9b 100644 --- a/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml +++ b/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-test-apps org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml b/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml index b0a3d78b1f2b..826fbebfd337 100644 --- a/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml +++ b/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-test-apps org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/tests/base/pom.xml b/testsuite/integration-arquillian/tests/base/pom.xml index 332b54a3121d..773861532ba4 100644 --- a/testsuite/integration-arquillian/tests/base/pom.xml +++ b/testsuite/integration-arquillian/tests/base/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-tests - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml index cfed2a3b8c19..4fd4483e6e61 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-adapters-jboss diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml index 788bd858dbd0..2cdebd08bb82 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-jboss-relative - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-adapters-relative-eap diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml index a5353b02e598..57a1783149b0 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-jboss - 11.0.0-SNAPSHOT + 11.0.0 pom diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml index 1b9f67df4d78..64fe2a595ca7 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-jboss-relative - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-adapters-relative-wildfly diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml index eb69d87b8fea..166864022c03 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-jboss - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-adapters-remote diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml index 9721466d3532..430d60ace3d9 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-karaf - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-adapters-fuse61 diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml index 79b9aebb1165..e0f376217d23 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-karaf - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-adapters-fuse62 diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml index 4f4c9cd77485..474d01d3eede 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-karaf - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-adapters-karaf3 diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml index 62a19faf1982..8363ccc86561 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-adapters-karaf diff --git a/testsuite/integration-arquillian/tests/other/adapters/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/pom.xml index 6d1b60acfe20..ae1face333df 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-adapters diff --git a/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml index bba3ac2d5c6a..ac9d820c537c 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-adapters-was diff --git a/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml index fae14d32c0be..5707b85a022b 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-was - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-adapters-was8 diff --git a/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml index a23025811937..31e618bbb7be 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-adapters-wls diff --git a/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml index ac77dd3c8c0c..9e5d056e62bd 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-wls - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-adapters-wls12 diff --git a/testsuite/integration-arquillian/tests/other/base-ui/pom.xml b/testsuite/integration-arquillian/tests/other/base-ui/pom.xml index 252ec2012c71..f65fa109fe40 100644 --- a/testsuite/integration-arquillian/tests/other/base-ui/pom.xml +++ b/testsuite/integration-arquillian/tests/other/base-ui/pom.xml @@ -22,7 +22,7 @@ integration-arquillian-tests-other org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/tests/other/clean-start/pom.xml b/testsuite/integration-arquillian/tests/other/clean-start/pom.xml index 9c5c0d3f8018..428dace66599 100644 --- a/testsuite/integration-arquillian/tests/other/clean-start/pom.xml +++ b/testsuite/integration-arquillian/tests/other/clean-start/pom.xml @@ -23,7 +23,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-smoke-clean-start diff --git a/testsuite/integration-arquillian/tests/other/console/pom.xml b/testsuite/integration-arquillian/tests/other/console/pom.xml index 20a5f19ae634..b4e7c2972eee 100644 --- a/testsuite/integration-arquillian/tests/other/console/pom.xml +++ b/testsuite/integration-arquillian/tests/other/console/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-console diff --git a/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml b/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml index b1d59b288603..9d533142be8e 100644 --- a/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml +++ b/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-jpa-performance diff --git a/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml b/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml index e5075565984b..f76b3c50d0b2 100644 --- a/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml +++ b/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-other-mod_auth_mellon diff --git a/testsuite/integration-arquillian/tests/other/pom.xml b/testsuite/integration-arquillian/tests/other/pom.xml index 356895a7718b..db372314f00a 100644 --- a/testsuite/integration-arquillian/tests/other/pom.xml +++ b/testsuite/integration-arquillian/tests/other/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests - 11.0.0-SNAPSHOT + 11.0.0 integration-arquillian-tests-other diff --git a/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml b/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml index 7eb6416c47b8..0586b787dc9f 100644 --- a/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml +++ b/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml b/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml index fa46afa2fe1c..65f5a43c4ec4 100644 --- a/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml +++ b/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-tests-other org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/tests/other/sssd/pom.xml b/testsuite/integration-arquillian/tests/other/sssd/pom.xml index 8e6f14379f4e..c8d26fda266f 100644 --- a/testsuite/integration-arquillian/tests/other/sssd/pom.xml +++ b/testsuite/integration-arquillian/tests/other/sssd/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-tests-other org.keycloak.testsuite - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/integration-arquillian/tests/pom.xml b/testsuite/integration-arquillian/tests/pom.xml index 156c6789b782..ac71633ee338 100755 --- a/testsuite/integration-arquillian/tests/pom.xml +++ b/testsuite/integration-arquillian/tests/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian - 11.0.0-SNAPSHOT + 11.0.0 pom diff --git a/testsuite/integration-arquillian/util/pom.xml b/testsuite/integration-arquillian/util/pom.xml index 5f901c7763b4..ca6b548268c0 100644 --- a/testsuite/integration-arquillian/util/pom.xml +++ b/testsuite/integration-arquillian/util/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/testsuite/performance/infinispan/pom.xml b/testsuite/performance/infinispan/pom.xml index a5d72e0bf978..2efb992ebea6 100644 --- a/testsuite/performance/infinispan/pom.xml +++ b/testsuite/performance/infinispan/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite performance - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/testsuite/performance/keycloak/pom.xml b/testsuite/performance/keycloak/pom.xml index 923483e9eebe..eb33c1cdba6d 100644 --- a/testsuite/performance/keycloak/pom.xml +++ b/testsuite/performance/keycloak/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite performance - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml b/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml index bd46fb06c491..dfe76357e330 100644 --- a/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml +++ b/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite performance - 11.0.0-SNAPSHOT + 11.0.0 ../../pom.xml 4.0.0 diff --git a/testsuite/performance/pom.xml b/testsuite/performance/pom.xml index dec5944f3df2..7025454a265c 100644 --- a/testsuite/performance/pom.xml +++ b/testsuite/performance/pom.xml @@ -21,7 +21,7 @@ keycloak-testsuite-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/testsuite/performance/tests/pom.xml b/testsuite/performance/tests/pom.xml index cb6ab2d0fde0..d149bd591d20 100644 --- a/testsuite/performance/tests/pom.xml +++ b/testsuite/performance/tests/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite performance - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/testsuite/pom.xml b/testsuite/pom.xml index 05a1cfacdf19..8508006b39f2 100755 --- a/testsuite/pom.xml +++ b/testsuite/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml 4.0.0 diff --git a/testsuite/utils/pom.xml b/testsuite/utils/pom.xml index f42f02ce9617..e92e5ff2df74 100755 --- a/testsuite/utils/pom.xml +++ b/testsuite/utils/pom.xml @@ -21,7 +21,7 @@ keycloak-testsuite-pom org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/themes/pom.xml b/themes/pom.xml index 3adba182bd14..cba6ecb0e29b 100755 --- a/themes/pom.xml +++ b/themes/pom.xml @@ -4,7 +4,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 4.0.0 diff --git a/util/embedded-ldap/pom.xml b/util/embedded-ldap/pom.xml index 85deefd127fa..409d618a9e13 100644 --- a/util/embedded-ldap/pom.xml +++ b/util/embedded-ldap/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../../pom.xml 4.0.0 diff --git a/util/pom.xml b/util/pom.xml index 047f47f05695..6ec33bee6f01 100644 --- a/util/pom.xml +++ b/util/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 ../pom.xml diff --git a/wildfly/adduser/pom.xml b/wildfly/adduser/pom.xml index c8d4347bec40..bd33ffc1420d 100755 --- a/wildfly/adduser/pom.xml +++ b/wildfly/adduser/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-wildfly-parent - 11.0.0-SNAPSHOT + 11.0.0 keycloak-wildfly-adduser diff --git a/wildfly/extensions/pom.xml b/wildfly/extensions/pom.xml index dbd7ef4c2b8b..bc7843ca36da 100755 --- a/wildfly/extensions/pom.xml +++ b/wildfly/extensions/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-wildfly-parent - 11.0.0-SNAPSHOT + 11.0.0 keycloak-wildfly-extensions diff --git a/wildfly/pom.xml b/wildfly/pom.xml index a7ad81831de9..51848cb896f7 100755 --- a/wildfly/pom.xml +++ b/wildfly/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0-SNAPSHOT + 11.0.0 Keycloak WildFly Integration diff --git a/wildfly/server-subsystem/pom.xml b/wildfly/server-subsystem/pom.xml index 078f42b46da1..b1f5f31001d3 100755 --- a/wildfly/server-subsystem/pom.xml +++ b/wildfly/server-subsystem/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-wildfly-parent - 11.0.0-SNAPSHOT + 11.0.0 keycloak-wildfly-server-subsystem From 0f6dc45fadbc1f8d2f4a90e8df550ae2f1322510 Mon Sep 17 00:00:00 2001 From: mhajas Date: Tue, 21 Jul 2020 13:14:27 +0200 Subject: [PATCH 02/30] KEYCLOAK-14828 Disable DTD for SAML XML parser (cherry picked from commit 37de7de78b2ae0eebee97fe917642bb849325f86) --- .../saml/common/util/StaxParserUtil.java | 1 + .../saml/common/util/StaxParserUtilTest.java | 30 +++++++++ .../testsuite/saml/SamlXMLAttacksTest.java | 67 +++++++++++++++++++ 3 files changed, 98 insertions(+) create mode 100644 testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/saml/SamlXMLAttacksTest.java diff --git a/saml-core/src/main/java/org/keycloak/saml/common/util/StaxParserUtil.java b/saml-core/src/main/java/org/keycloak/saml/common/util/StaxParserUtil.java index e4bd59d63284..10622bb012b6 100755 --- a/saml-core/src/main/java/org/keycloak/saml/common/util/StaxParserUtil.java +++ b/saml-core/src/main/java/org/keycloak/saml/common/util/StaxParserUtil.java @@ -895,6 +895,7 @@ private static XMLInputFactory getXMLInputFactory() { xmlInputFactory.setProperty(XMLInputFactory.IS_SUPPORTING_EXTERNAL_ENTITIES, Boolean.FALSE); xmlInputFactory.setProperty(XMLInputFactory.IS_NAMESPACE_AWARE, Boolean.TRUE); xmlInputFactory.setProperty(XMLInputFactory.IS_COALESCING, Boolean.TRUE); + xmlInputFactory.setProperty(XMLInputFactory.SUPPORT_DTD, Boolean.FALSE); return xmlInputFactory; } finally { diff --git a/saml-core/src/test/java/org/keycloak/saml/common/util/StaxParserUtilTest.java b/saml-core/src/test/java/org/keycloak/saml/common/util/StaxParserUtilTest.java index 14438c4eeb70..7a4c277704bb 100644 --- a/saml-core/src/test/java/org/keycloak/saml/common/util/StaxParserUtilTest.java +++ b/saml-core/src/test/java/org/keycloak/saml/common/util/StaxParserUtilTest.java @@ -214,4 +214,34 @@ public void testGetDOMElementSameElements() throws XMLStreamException, ParsingEx Assert.fail(String.valueOf(reader.nextEvent())); } + @Test + public void testXMLBombAttack() throws XMLStreamException { + String xml = "" + + "" + + " " + + " " + + " " + + " " + + " " + + " " + + " " + + " " + + " " + + " " + + "]>" + + "&lol9;"; + + XMLEventReader reader = StaxParserUtil.getXMLEventReader(IOUtils.toInputStream(xml, Charset.defaultCharset())); + + reader.nextEvent(); // + reader.nextEvent(); // + try { + StaxParserUtil.getDOMElement(reader); + } catch (ParsingException exception) { + // DTD should be disabled for SAML Parser, therefore this should fail with following error message + assertThat("", exception.getMessage(), containsString("The entity \"lol9\" was referenced, but not declared")); + } + } + } diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/saml/SamlXMLAttacksTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/saml/SamlXMLAttacksTest.java new file mode 100644 index 000000000000..a7b50a120030 --- /dev/null +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/saml/SamlXMLAttacksTest.java @@ -0,0 +1,67 @@ +package org.keycloak.testsuite.saml; + +import org.apache.http.NameValuePair; +import org.apache.http.client.entity.UrlEncodedFormEntity; +import org.apache.http.client.methods.CloseableHttpResponse; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.message.BasicNameValuePair; +import org.junit.Test; +import org.keycloak.saml.common.constants.GeneralConstants; +import org.keycloak.saml.processing.web.util.PostBindingUtil; + +import java.io.UnsupportedEncodingException; +import java.util.LinkedList; +import java.util.List; + +import static org.hamcrest.CoreMatchers.containsString; +import static org.junit.Assert.assertThat; +import static org.keycloak.testsuite.util.Matchers.bodyHC; + +public class SamlXMLAttacksTest extends AbstractSamlTest { + + @Test(timeout = 4000) + public void testXMLBombAttackResistance() throws Exception { + + String bombDoctype = "" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "]>"; + + String samlAuthnRequest = "" + + "" + SAML_CLIENT_ID_SALES_POST + "&lol9;" + + ""; + + try (CloseableHttpClient client = HttpClientBuilder.create().build()) { + HttpPost post = new HttpPost(getAuthServerSamlEndpoint(REALM_NAME)); + + List parameters = new LinkedList<>(); + String encoded = PostBindingUtil.base64Encode(bombDoctype + samlAuthnRequest); + parameters.add(new BasicNameValuePair(GeneralConstants.SAML_REQUEST_KEY, encoded)); + + UrlEncodedFormEntity formEntity; + try { + formEntity = new UrlEncodedFormEntity(parameters, "UTF-8"); + } catch (UnsupportedEncodingException e) { + throw new RuntimeException(e); + } + + post.setEntity(formEntity); + + try (CloseableHttpResponse response = client.execute(post)) { + assertThat(response, bodyHC(containsString("Invalid Request"))); + } + } + } + +} From 3ba95662df8abe74c9248e879faa8bf4022ede67 Mon Sep 17 00:00:00 2001 From: mhajas Date: Wed, 17 Jun 2020 14:31:08 +0200 Subject: [PATCH 03/30] KEYCLOAK-14232 Add Referrer-Policy: no-referrer to each response from Keycloak (cherry picked from commit 0b49640231abc6e465542bd2608e1c908c079ced) --- .../models/BrowserSecurityHeaders.java | 153 +++++------------- .../models/ContentSecurityPolicyBuilder.java | 48 ++++++ .../models/utils/RepresentationToModel.java | 2 +- .../models/BrowserSecurityHeadersTest.java | 8 +- .../DefaultSecurityHeadersProvider.java | 41 +++-- .../services/managers/RealmManager.java | 2 +- .../testsuite/admin/AdminHeadersTest.java | 21 +-- .../error/UncaughtErrorPageTest.java | 13 +- .../keycloak/testsuite/forms/LoginTest.java | 11 +- .../oauth/LoginStatusIframeEndpointTest.java | 6 +- 10 files changed, 143 insertions(+), 162 deletions(-) mode change 100755 => 100644 server-spi-private/src/main/java/org/keycloak/models/BrowserSecurityHeaders.java create mode 100644 server-spi-private/src/main/java/org/keycloak/models/ContentSecurityPolicyBuilder.java diff --git a/server-spi-private/src/main/java/org/keycloak/models/BrowserSecurityHeaders.java b/server-spi-private/src/main/java/org/keycloak/models/BrowserSecurityHeaders.java old mode 100755 new mode 100644 index 53c1f12a27ca..5e584c274443 --- a/server-spi-private/src/main/java/org/keycloak/models/BrowserSecurityHeaders.java +++ b/server-spi-private/src/main/java/org/keycloak/models/BrowserSecurityHeaders.java @@ -21,125 +21,54 @@ import java.util.HashMap; import java.util.Map; -/** - * @author Bill Burke - * @version $Revision: 1 $ - */ -public class BrowserSecurityHeaders { - - public static final String X_FRAME_OPTIONS = "X-Frame-Options"; - - public static final String X_FRAME_OPTIONS_DEFAULT = "SAMEORIGIN"; - - public static final String X_FRAME_OPTIONS_KEY = "xFrameOptions"; - - public static final String CONTENT_SECURITY_POLICY = "Content-Security-Policy"; - - public static final String CONTENT_SECURITY_POLICY_DEFAULT = ContentSecurityPolicyBuilder.create().build(); - - public static final String CONTENT_SECURITY_POLICY_KEY = "contentSecurityPolicy"; - - public static final String CONTENT_SECURITY_POLICY_REPORT_ONLY = "Content-Security-Policy-Report-Only"; - - public static final String CONTENT_SECURITY_POLICY_REPORT_ONLY_DEFAULT = ""; - - public static final String CONTENT_SECURITY_POLICY_REPORT_ONLY_KEY = "contentSecurityPolicyReportOnly"; - - public static final String X_CONTENT_TYPE_OPTIONS = "X-Content-Type-Options"; - - public static final String X_CONTENT_TYPE_OPTIONS_DEFAULT = "nosniff"; - - public static final String X_CONTENT_TYPE_OPTIONS_KEY = "xContentTypeOptions"; - - public static final String X_ROBOTS_TAG = "X-Robots-Tag"; - - public static final String X_ROBOTS_TAG_KEY = "xRobotsTag"; - - public static final String X_ROBOTS_TAG_DEFAULT = "none"; - - public static final String X_XSS_PROTECTION = "X-XSS-Protection"; - - public static final String X_XSS_PROTECTION_DEFAULT = "1; mode=block"; - - public static final String X_XSS_PROTECTION_KEY = "xXSSProtection"; +public enum BrowserSecurityHeaders { + + X_FRAME_OPTIONS("xFrameOptions", "X-Frame-Options", "SAMEORIGIN"), + CONTENT_SECURITY_POLICY("contentSecurityPolicy", "Content-Security-Policy", ContentSecurityPolicyBuilder.create().build()), + CONTENT_SECURITY_POLICY_REPORT_ONLY("contentSecurityPolicyReportOnly", "Content-Security-Policy-Report-Only", ""), + X_CONTENT_TYPE_OPTIONS("xContentTypeOptions", "X-Content-Type-Options", "nosniff"), + X_ROBOTS_TAG("xRobotsTag", "X-Robots-Tag", "none"), + X_XSS_PROTECTION("xXSSProtection", "X-XSS-Protection", "1; mode=block"), + STRICT_TRANSPORT_SECURITY("strictTransportSecurity", "Strict-Transport-Security", "max-age=31536000; includeSubDomains"), + REFERRER_POLICY("referrerPolicy", "Referrer-Policy", "no-referrer"), + ; + + private final String key; + private final String headerName; + private final String defaultValue; + + BrowserSecurityHeaders(String key, String headerName, String defaultValue) { + this.key = key; + this.headerName = headerName; + this.defaultValue = defaultValue; + } - public static final String STRICT_TRANSPORT_SECURITY = "Strict-Transport-Security"; + public String getKey() { + return key; + } - public static final String STRICT_TRANSPORT_SECURITY_DEFAULT = "max-age=31536000; includeSubDomains"; + public String getHeaderName() { + return headerName; + } - public static final String STRICT_TRANSPORT_SECURITY_KEY = "strictTransportSecurity"; + public String getDefaultValue() { + return defaultValue; + } - public static final Map headerAttributeMap; - public static final Map defaultHeaders; + @Deprecated // should be removed eventually + public static final Map realmDefaultHeaders; static { - Map headerMap = new HashMap<>(); - headerMap.put(X_FRAME_OPTIONS_KEY, X_FRAME_OPTIONS); - headerMap.put(CONTENT_SECURITY_POLICY_KEY, CONTENT_SECURITY_POLICY); - headerMap.put(CONTENT_SECURITY_POLICY_REPORT_ONLY_KEY, CONTENT_SECURITY_POLICY_REPORT_ONLY); - headerMap.put(X_CONTENT_TYPE_OPTIONS_KEY, X_CONTENT_TYPE_OPTIONS); - headerMap.put(X_ROBOTS_TAG_KEY, X_ROBOTS_TAG); - headerMap.put(X_XSS_PROTECTION_KEY, X_XSS_PROTECTION); - headerMap.put(STRICT_TRANSPORT_SECURITY_KEY, STRICT_TRANSPORT_SECURITY); Map dh = new HashMap<>(); - dh.put(X_FRAME_OPTIONS_KEY, X_FRAME_OPTIONS_DEFAULT); - dh.put(CONTENT_SECURITY_POLICY_KEY, CONTENT_SECURITY_POLICY_DEFAULT); - dh.put(CONTENT_SECURITY_POLICY_REPORT_ONLY_KEY, CONTENT_SECURITY_POLICY_REPORT_ONLY_DEFAULT); - dh.put(X_CONTENT_TYPE_OPTIONS_KEY, X_CONTENT_TYPE_OPTIONS_DEFAULT); - dh.put(X_ROBOTS_TAG_KEY, X_ROBOTS_TAG_DEFAULT); - dh.put(X_XSS_PROTECTION_KEY, X_XSS_PROTECTION_DEFAULT); - dh.put(STRICT_TRANSPORT_SECURITY_KEY, STRICT_TRANSPORT_SECURITY_DEFAULT); - - defaultHeaders = Collections.unmodifiableMap(dh); - headerAttributeMap = Collections.unmodifiableMap(headerMap); + dh.put(X_FRAME_OPTIONS.getKey(), X_FRAME_OPTIONS.getDefaultValue()); + dh.put(CONTENT_SECURITY_POLICY.getKey(), CONTENT_SECURITY_POLICY.getDefaultValue()); + dh.put(CONTENT_SECURITY_POLICY_REPORT_ONLY.getKey(), CONTENT_SECURITY_POLICY_REPORT_ONLY.getDefaultValue()); + dh.put(X_CONTENT_TYPE_OPTIONS.getKey(), X_CONTENT_TYPE_OPTIONS.getDefaultValue()); + dh.put(X_ROBOTS_TAG.getKey(), X_ROBOTS_TAG.getDefaultValue()); + dh.put(X_XSS_PROTECTION.getKey(), X_XSS_PROTECTION.getDefaultValue()); + dh.put(STRICT_TRANSPORT_SECURITY.getKey(), STRICT_TRANSPORT_SECURITY.getDefaultValue()); + + realmDefaultHeaders = Collections.unmodifiableMap(dh); } - - public static class ContentSecurityPolicyBuilder { - - private String frameSrc = "'self'"; - private String frameAncestors = "'self'"; - private String objectSrc = "'none'"; - - private boolean first; - private StringBuilder sb; - - public static ContentSecurityPolicyBuilder create() { - return new ContentSecurityPolicyBuilder(); - } - - public ContentSecurityPolicyBuilder frameSrc(String frameSrc) { - this.frameSrc = frameSrc; - return this; - } - - public ContentSecurityPolicyBuilder frameAncestors(String frameancestors) { - this.frameAncestors = frameancestors; - return this; - } - - public String build() { - sb = new StringBuilder(); - first = true; - - build("frame-src", frameSrc); - build("frame-ancestors", frameAncestors); - build("object-src", objectSrc); - - return sb.toString(); - } - - private void build(String k, String v) { - if (v != null) { - if (!first) { - sb.append(" "); - } - first = false; - - sb.append(k).append(" ").append(v).append(";"); - } - } - - } - } diff --git a/server-spi-private/src/main/java/org/keycloak/models/ContentSecurityPolicyBuilder.java b/server-spi-private/src/main/java/org/keycloak/models/ContentSecurityPolicyBuilder.java new file mode 100644 index 000000000000..d765a4958d38 --- /dev/null +++ b/server-spi-private/src/main/java/org/keycloak/models/ContentSecurityPolicyBuilder.java @@ -0,0 +1,48 @@ +package org.keycloak.models; + +public class ContentSecurityPolicyBuilder { + + private String frameSrc = "self"; + private String frameAncestors = "self"; + private String objectSrc = "none"; + + private boolean first; + private StringBuilder sb; + + public static ContentSecurityPolicyBuilder create() { + return new ContentSecurityPolicyBuilder(); + } + + public ContentSecurityPolicyBuilder frameSrc(String frameSrc) { + this.frameSrc = frameSrc; + return this; + } + + public ContentSecurityPolicyBuilder frameAncestors(String frameancestors) { + this.frameAncestors = frameancestors; + return this; + } + + public String build() { + sb = new StringBuilder(); + first = true; + + build("frame-src", frameSrc); + build("frame-ancestors", frameAncestors); + build("object-src", objectSrc); + + return sb.toString(); + } + + private void build(String k, String v) { + if (v != null) { + if (!first) { + sb.append(" "); + } + first = false; + + sb.append(k).append(" '").append(v).append("';"); + } + } + +} diff --git a/server-spi-private/src/main/java/org/keycloak/models/utils/RepresentationToModel.java b/server-spi-private/src/main/java/org/keycloak/models/utils/RepresentationToModel.java index 52ff18538dd5..f50de409856e 100755 --- a/server-spi-private/src/main/java/org/keycloak/models/utils/RepresentationToModel.java +++ b/server-spi-private/src/main/java/org/keycloak/models/utils/RepresentationToModel.java @@ -385,7 +385,7 @@ public static void importRealm(KeycloakSession session, RealmRepresentation rep, if (rep.getBrowserSecurityHeaders() != null) { newRealm.setBrowserSecurityHeaders(rep.getBrowserSecurityHeaders()); } else { - newRealm.setBrowserSecurityHeaders(BrowserSecurityHeaders.defaultHeaders); + newRealm.setBrowserSecurityHeaders(BrowserSecurityHeaders.realmDefaultHeaders); } if (rep.getComponents() != null) { diff --git a/server-spi-private/src/test/java/org/keycloak/models/BrowserSecurityHeadersTest.java b/server-spi-private/src/test/java/org/keycloak/models/BrowserSecurityHeadersTest.java index 648925fb9b5a..c832827a5b59 100644 --- a/server-spi-private/src/test/java/org/keycloak/models/BrowserSecurityHeadersTest.java +++ b/server-spi-private/src/test/java/org/keycloak/models/BrowserSecurityHeadersTest.java @@ -8,10 +8,10 @@ public class BrowserSecurityHeadersTest { @Test public void contentSecurityPolicyBuilderTest() { - assertEquals("frame-src 'self'; frame-ancestors 'self'; object-src 'none';", BrowserSecurityHeaders.ContentSecurityPolicyBuilder.create().build()); - assertEquals("frame-ancestors 'self'; object-src 'none';", BrowserSecurityHeaders.ContentSecurityPolicyBuilder.create().frameSrc(null).build()); - assertEquals("frame-src 'self'; object-src 'none';", BrowserSecurityHeaders.ContentSecurityPolicyBuilder.create().frameAncestors(null).build()); - assertEquals("frame-src 'custom-frame-src'; frame-ancestors 'custom-frame-ancestors'; object-src 'none';", BrowserSecurityHeaders.ContentSecurityPolicyBuilder.create().frameSrc("'custom-frame-src'").frameAncestors("'custom-frame-ancestors'").build()); + assertEquals("frame-src 'self'; frame-ancestors 'self'; object-src 'none';", ContentSecurityPolicyBuilder.create().build()); + assertEquals("frame-ancestors 'self'; object-src 'none';", ContentSecurityPolicyBuilder.create().frameSrc(null).build()); + assertEquals("frame-src 'self'; object-src 'none';", ContentSecurityPolicyBuilder.create().frameAncestors(null).build()); + assertEquals("frame-src 'custom-frame-src'; frame-ancestors 'custom-frame-ancestors'; object-src 'none';", ContentSecurityPolicyBuilder.create().frameSrc("custom-frame-src").frameAncestors("custom-frame-ancestors").build()); } } diff --git a/services/src/main/java/org/keycloak/headers/DefaultSecurityHeadersProvider.java b/services/src/main/java/org/keycloak/headers/DefaultSecurityHeadersProvider.java index 7664628a8d89..519170093566 100644 --- a/services/src/main/java/org/keycloak/headers/DefaultSecurityHeadersProvider.java +++ b/services/src/main/java/org/keycloak/headers/DefaultSecurityHeadersProvider.java @@ -18,6 +18,7 @@ import org.jboss.logging.Logger; import org.keycloak.models.BrowserSecurityHeaders; +import org.keycloak.models.ContentSecurityPolicyBuilder; import org.keycloak.models.KeycloakSession; import org.keycloak.models.RealmModel; @@ -26,8 +27,11 @@ import javax.ws.rs.container.ContainerResponseContext; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.MultivaluedMap; +import java.util.Collections; import java.util.Map; +import static org.keycloak.models.BrowserSecurityHeaders.CONTENT_SECURITY_POLICY; + public class DefaultSecurityHeadersProvider implements SecurityHeadersProvider { private static final Logger LOGGER = Logger.getLogger(DefaultSecurityHeadersProvider.class); @@ -44,7 +48,7 @@ public DefaultSecurityHeadersProvider(KeycloakSession session) { if (realm != null) { headerValues = realm.getBrowserSecurityHeaders(); } else { - headerValues = BrowserSecurityHeaders.defaultHeaders; + headerValues = Collections.emptyMap(); } } @@ -81,27 +85,31 @@ public void addHeaders(ContainerRequestContext requestContext, ContainerResponse } private void addGenericHeaders(MultivaluedMap headers) { - addHeader(BrowserSecurityHeaders.STRICT_TRANSPORT_SECURITY_KEY, headers); - addHeader(BrowserSecurityHeaders.X_CONTENT_TYPE_OPTIONS_KEY, headers); - addHeader(BrowserSecurityHeaders.X_XSS_PROTECTION_KEY, headers); + addHeader(BrowserSecurityHeaders.STRICT_TRANSPORT_SECURITY, headers); + addHeader(BrowserSecurityHeaders.X_CONTENT_TYPE_OPTIONS, headers); + addHeader(BrowserSecurityHeaders.X_XSS_PROTECTION, headers); + addHeader(BrowserSecurityHeaders.REFERRER_POLICY, headers); } private void addRestHeaders(MultivaluedMap headers) { - addHeader(BrowserSecurityHeaders.STRICT_TRANSPORT_SECURITY_KEY, headers); - addHeader(BrowserSecurityHeaders.X_FRAME_OPTIONS_KEY, headers); - addHeader(BrowserSecurityHeaders.X_CONTENT_TYPE_OPTIONS_KEY, headers); - addHeader(BrowserSecurityHeaders.X_XSS_PROTECTION_KEY, headers); + addHeader(BrowserSecurityHeaders.STRICT_TRANSPORT_SECURITY, headers); + addHeader(BrowserSecurityHeaders.X_FRAME_OPTIONS, headers); + addHeader(BrowserSecurityHeaders.X_CONTENT_TYPE_OPTIONS, headers); + addHeader(BrowserSecurityHeaders.X_XSS_PROTECTION, headers); + addHeader(BrowserSecurityHeaders.REFERRER_POLICY, headers); } private void addHtmlHeaders(MultivaluedMap headers) { - BrowserSecurityHeaders.headerAttributeMap.keySet().forEach(k -> addHeader(k, headers)); + for (BrowserSecurityHeaders header : BrowserSecurityHeaders.values()) { + addHeader(header, headers); + } // TODO This will be refactored as part of introducing a more strict CSP header if (options != null) { - BrowserSecurityHeaders.ContentSecurityPolicyBuilder csp = BrowserSecurityHeaders.ContentSecurityPolicyBuilder.create(); + ContentSecurityPolicyBuilder csp = ContentSecurityPolicyBuilder.create(); if (options.isAllowAnyFrameAncestor()) { - headers.remove(BrowserSecurityHeaders.X_FRAME_OPTIONS); + headers.remove(BrowserSecurityHeaders.X_FRAME_OPTIONS.getHeaderName()); csp.frameAncestors(null); } @@ -111,17 +119,16 @@ private void addHtmlHeaders(MultivaluedMap headers) { csp.frameSrc(allowedFrameSrc); } - if (BrowserSecurityHeaders.CONTENT_SECURITY_POLICY_DEFAULT.equals(headers.getFirst(BrowserSecurityHeaders.CONTENT_SECURITY_POLICY))) { - headers.putSingle(BrowserSecurityHeaders.CONTENT_SECURITY_POLICY, csp.build()); + if (CONTENT_SECURITY_POLICY.getDefaultValue().equals(headers.getFirst(CONTENT_SECURITY_POLICY.getHeaderName()))) { + headers.putSingle(CONTENT_SECURITY_POLICY.getHeaderName(), csp.build()); } } } - private void addHeader(String key, MultivaluedMap headers) { - String header = BrowserSecurityHeaders.headerAttributeMap.get(key); - String value = headerValues.get(key); + private void addHeader(BrowserSecurityHeaders header, MultivaluedMap headers) { + String value = headerValues.getOrDefault(header.getKey(), header.getDefaultValue()); if (value != null && !value.isEmpty()) { - headers.putSingle(header, value); + headers.putSingle(header.getHeaderName(), value); } } diff --git a/services/src/main/java/org/keycloak/services/managers/RealmManager.java b/services/src/main/java/org/keycloak/services/managers/RealmManager.java index 961716adb418..4bb0d2cdca20 100755 --- a/services/src/main/java/org/keycloak/services/managers/RealmManager.java +++ b/services/src/main/java/org/keycloak/services/managers/RealmManager.java @@ -227,7 +227,7 @@ public String getRealmAdminClientId(RealmRepresentation realm) { protected void setupRealmDefaults(RealmModel realm) { - realm.setBrowserSecurityHeaders(BrowserSecurityHeaders.defaultHeaders); + realm.setBrowserSecurityHeaders(BrowserSecurityHeaders.realmDefaultHeaders); // brute force realm.setBruteForceProtected(false); // default settings off for now todo set it on diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/AdminHeadersTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/AdminHeadersTest.java index 04a32f13af04..41fcdfd212b8 100644 --- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/AdminHeadersTest.java +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/AdminHeadersTest.java @@ -1,22 +1,20 @@ package org.keycloak.testsuite.admin; -import org.apache.http.client.methods.CloseableHttpResponse; -import org.apache.http.client.methods.HttpOptions; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClientBuilder; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.keycloak.models.BrowserSecurityHeaders; -import org.keycloak.services.resources.Cors; import org.keycloak.testsuite.util.UserBuilder; import javax.ws.rs.core.MultivaluedMap; import javax.ws.rs.core.Response; import java.io.IOException; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; +import static org.hamcrest.Matchers.equalTo; +import static org.hamcrest.Matchers.is; +import static org.junit.Assert.assertThat; public class AdminHeadersTest extends AbstractAdminTest { @@ -42,14 +40,19 @@ public void testHeaders() { Response response = realm.users().create(UserBuilder.create().username("headers-user").build()); MultivaluedMap h = response.getHeaders(); - assertEquals(BrowserSecurityHeaders.STRICT_TRANSPORT_SECURITY_DEFAULT, h.getFirst(BrowserSecurityHeaders.STRICT_TRANSPORT_SECURITY)); - assertEquals(BrowserSecurityHeaders.X_FRAME_OPTIONS_DEFAULT, h.getFirst(BrowserSecurityHeaders.X_FRAME_OPTIONS)); - assertEquals(BrowserSecurityHeaders.X_CONTENT_TYPE_OPTIONS_DEFAULT, h.getFirst(BrowserSecurityHeaders.X_CONTENT_TYPE_OPTIONS)); - assertEquals(BrowserSecurityHeaders.X_XSS_PROTECTION_DEFAULT, h.getFirst(BrowserSecurityHeaders.X_XSS_PROTECTION)); + assertDefaultValue(BrowserSecurityHeaders.STRICT_TRANSPORT_SECURITY, h); + assertDefaultValue(BrowserSecurityHeaders.X_FRAME_OPTIONS, h); + assertDefaultValue(BrowserSecurityHeaders.X_CONTENT_TYPE_OPTIONS, h); + assertDefaultValue(BrowserSecurityHeaders.X_XSS_PROTECTION, h); + assertDefaultValue(BrowserSecurityHeaders.REFERRER_POLICY, h); response.close(); } + private void assertDefaultValue(BrowserSecurityHeaders header, MultivaluedMap h) { + assertThat(h.getFirst(header.getHeaderName()), is(equalTo(header.getDefaultValue()))); + } + private String getAdminUrl(String resource) { return suiteContext.getAuthServerInfo().getContextRoot().toString() + "/auth/admin/" + resource; } diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/error/UncaughtErrorPageTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/error/UncaughtErrorPageTest.java index 92454d2ec6df..7c8d4f07f0b5 100644 --- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/error/UncaughtErrorPageTest.java +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/error/UncaughtErrorPageTest.java @@ -1,9 +1,7 @@ package org.keycloak.testsuite.error; -import org.apache.commons.io.IOUtils; import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.HttpPost; -import org.apache.http.client.methods.HttpRequestBase; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClientBuilder; @@ -14,7 +12,6 @@ import org.keycloak.broker.provider.util.SimpleHttp; import org.keycloak.common.util.StreamUtil; import org.keycloak.models.BrowserSecurityHeaders; -import org.keycloak.representations.idm.ErrorRepresentation; import org.keycloak.representations.idm.OAuth2ErrorRepresentation; import org.keycloak.representations.idm.RealmRepresentation; import org.keycloak.testsuite.AbstractKeycloakTest; @@ -31,7 +28,6 @@ import java.nio.charset.Charset; import java.util.Collections; import java.util.List; -import java.util.Map; import static org.junit.Assert.*; @@ -126,14 +122,13 @@ public void uncaughtErrorHeaders() throws IOException { try (CloseableHttpClient client = HttpClientBuilder.create().build()) { SimpleHttp.Response response = SimpleHttp.doGet(uri.toString(), client).header("Accept", MediaType.TEXT_HTML_UTF_8).asResponse(); - for (Map.Entry e : BrowserSecurityHeaders.headerAttributeMap.entrySet()) { - String header = e.getValue(); - String expectedValue = BrowserSecurityHeaders.defaultHeaders.get(e.getKey()); + for (BrowserSecurityHeaders header : BrowserSecurityHeaders.values()) { + String expectedValue = header.getDefaultValue(); if (expectedValue == null || expectedValue.isEmpty()) { - assertNull(response.getFirstHeader(header)); + assertNull(response.getFirstHeader(header.getHeaderName())); } else { - assertEquals(expectedValue, response.getFirstHeader(header)); + assertEquals(expectedValue, response.getFirstHeader(header.getHeaderName())); } } } diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/forms/LoginTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/forms/LoginTest.java index 57bdf8d9b2b6..2871a3206006 100644 --- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/forms/LoginTest.java +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/forms/LoginTest.java @@ -67,7 +67,6 @@ import java.util.Arrays; import java.util.HashMap; import java.util.List; -import java.util.Map; import java.util.concurrent.TimeUnit; import org.apache.commons.lang3.RandomStringUtils; @@ -163,14 +162,14 @@ public void testBrowserSecurityHeaders() { Client client = ClientBuilder.newClient(); Response response = client.target(oauth.getLoginFormUrl()).request().get(); Assert.assertThat(response.getStatus(), is(equalTo(200))); - for (Map.Entry entry : BrowserSecurityHeaders.defaultHeaders.entrySet()) { - String headerName = BrowserSecurityHeaders.headerAttributeMap.get(entry.getKey()); - String headerValue = response.getHeaderString(headerName); - if (entry.getValue().isEmpty()) { + for (BrowserSecurityHeaders header : BrowserSecurityHeaders.values()) { + String headerValue = response.getHeaderString(header.getHeaderName()); + String expectedValue = header.getDefaultValue(); + if (expectedValue.isEmpty()) { Assert.assertNull(headerValue); } else { Assert.assertNotNull(headerValue); - Assert.assertThat(headerValue, is(equalTo(entry.getValue()))); + Assert.assertThat(headerValue, is(equalTo(expectedValue))); } } response.close(); diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/oauth/LoginStatusIframeEndpointTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/oauth/LoginStatusIframeEndpointTest.java index c9f7e464b63a..32a05d75c9b4 100644 --- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/oauth/LoginStatusIframeEndpointTest.java +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/oauth/LoginStatusIframeEndpointTest.java @@ -130,9 +130,9 @@ public void checkIframe() throws IOException { assertTrue(s.contains("function getCookie()")); assertEquals("CP=\"This is not a P3P policy!\"", response.getFirstHeader("P3P").getValue()); - assertNull(response.getFirstHeader(BrowserSecurityHeaders.X_FRAME_OPTIONS)); - assertEquals("frame-src 'self'; object-src 'none';", response.getFirstHeader(BrowserSecurityHeaders.CONTENT_SECURITY_POLICY).getValue()); - assertEquals("none", response.getFirstHeader(BrowserSecurityHeaders.X_ROBOTS_TAG).getValue()); + assertNull(response.getFirstHeader(BrowserSecurityHeaders.X_FRAME_OPTIONS.getHeaderName())); + assertEquals("frame-src 'self'; object-src 'none';", response.getFirstHeader(BrowserSecurityHeaders.CONTENT_SECURITY_POLICY.getHeaderName()).getValue()); + assertEquals("none", response.getFirstHeader(BrowserSecurityHeaders.X_ROBOTS_TAG.getHeaderName()).getValue()); response.close(); From 73b16209bc9f8276be78905759c1591d9b2279e7 Mon Sep 17 00:00:00 2001 From: Dan Manastireanu <498419+danmana@users.noreply.github.com> Date: Tue, 28 Jul 2020 14:19:31 +0300 Subject: [PATCH 04/30] fix: Fix regex replacement for underscore and minus in parseToken. Closes #KEYCLOAK-14917 --- adapters/oidc/js/src/main/resources/keycloak.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/adapters/oidc/js/src/main/resources/keycloak.js b/adapters/oidc/js/src/main/resources/keycloak.js index 5ba4b6378d37..845ea3006abb 100755 --- a/adapters/oidc/js/src/main/resources/keycloak.js +++ b/adapters/oidc/js/src/main/resources/keycloak.js @@ -1053,8 +1053,8 @@ function decodeToken(str) { str = str.split('.')[1]; - str = str.replace('/-/g', '+'); - str = str.replace('/_/g', '/'); + str = str.replace(/-/g, '+'); + str = str.replace(/_/g, '/'); switch (str.length % 4) { case 0: break; From c1bbd7c508e467fc1faaf3709ffe803bbc3e11af Mon Sep 17 00:00:00 2001 From: Douglas Palmer Date: Tue, 16 Jun 2020 10:57:00 -0700 Subject: [PATCH 05/30] [KEYCLOAK-14352] JavaScript injection vulnerability of Realm registration REST API --- .../services/managers/RealmManager.java | 10 ++++- .../testsuite/model/BadRealmTest.java | 42 +++++++++++++++++++ 2 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/model/BadRealmTest.java diff --git a/services/src/main/java/org/keycloak/services/managers/RealmManager.java b/services/src/main/java/org/keycloak/services/managers/RealmManager.java index 4bb0d2cdca20..495debaf79cf 100755 --- a/services/src/main/java/org/keycloak/services/managers/RealmManager.java +++ b/services/src/main/java/org/keycloak/services/managers/RealmManager.java @@ -97,7 +97,12 @@ public RealmModel createRealm(String name) { } public RealmModel createRealm(String id, String name) { - if (id == null) id = KeycloakModelUtils.generateId(); + if (id == null) { + id = KeycloakModelUtils.generateId(); + } + else { + ReservedCharValidator.validate(id); + } ReservedCharValidator.validate(name); RealmModel realm = model.createRealm(id, name); realm.setName(name); @@ -505,6 +510,9 @@ public RealmModel importRealm(RealmRepresentation rep, boolean skipUserDependent if (id == null) { id = KeycloakModelUtils.generateId(); } + else { + ReservedCharValidator.validate(id); + } RealmModel realm = model.createRealm(id, rep.getRealm()); ReservedCharValidator.validate(rep.getRealm()); realm.setName(rep.getRealm()); diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/model/BadRealmTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/model/BadRealmTest.java new file mode 100644 index 000000000000..76b1f963b471 --- /dev/null +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/model/BadRealmTest.java @@ -0,0 +1,42 @@ +package org.keycloak.testsuite.model; + +import org.junit.Test; +import org.keycloak.models.KeycloakSession; +import org.keycloak.representations.idm.RealmRepresentation; +import org.keycloak.services.managers.RealmManager; +import org.keycloak.testsuite.AbstractKeycloakTest; +import org.keycloak.testsuite.arquillian.annotation.ModelTest; +import org.keycloak.utils.ReservedCharValidator; + +import java.util.List; + +import static org.junit.Assert.fail; + +public class BadRealmTest extends AbstractKeycloakTest { + private String name = "MyRealm"; + private String id = "MyId"; + private String script = ""; + + public void addTestRealms(List testRealms) { + } + + @Test + @ModelTest + public void testBadRealmName(KeycloakSession session) { + RealmManager manager = new RealmManager(session); + try { + manager.createRealm(id, name + script); + fail(); + } catch (ReservedCharValidator.ReservedCharException ex) {} + } + + @Test + @ModelTest + public void testBadRealmId(KeycloakSession session) { + RealmManager manager = new RealmManager(session); + try { + manager.createRealm(id + script, name); + fail(); + } catch (ReservedCharValidator.ReservedCharException ex) {} + } +} From 2a4aff1183929d5c79f095a868902bc918027b71 Mon Sep 17 00:00:00 2001 From: Martin Idel Date: Mon, 27 Jul 2020 15:36:35 +0200 Subject: [PATCH 06/30] KEYCLOAK-14869: Fix nullpointer exception in FullNameLDAPStorageMapper Setting an attribute should be possible with a list containing no elements or a null list This can happen e.g. when creating users via idps using a UserAttributeStatementMapper. Fix this unprotected access in other classes too --- .../mappers/FullNameLDAPStorageMapper.java | 7 +- .../UserAttributeLDAPStorageMapper.java | 5 +- .../org/keycloak/models/jpa/UserAdapter.java | 9 +- .../AbstractUserAdapterFederatedStorage.java | 2 +- .../ldap/LDAPProvidersFullNameMapperTest.java | 166 ++++++++++++++++++ .../ldap/LDAPProvidersIntegrationTest.java | 78 -------- 6 files changed, 179 insertions(+), 88 deletions(-) create mode 100644 testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPProvidersFullNameMapperTest.java diff --git a/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/FullNameLDAPStorageMapper.java b/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/FullNameLDAPStorageMapper.java index d893a8584d50..4fa689503d2e 100644 --- a/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/FullNameLDAPStorageMapper.java +++ b/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/FullNameLDAPStorageMapper.java @@ -141,14 +141,15 @@ public void setSingleAttribute(String name, String value) { @Override public void setAttribute(String name, List values) { + String valueToSet = (values != null && values.size() > 0) ? values.get(0) : null; if (UserModel.FIRST_NAME.equals(name)) { - this.firstName = values.get(0); + this.firstName = valueToSet; setFullNameToLDAPObject(); } else if (UserModel.LAST_NAME.equals(name)) { - this.lastName = values.get(0); + this.lastName = valueToSet; setFullNameToLDAPObject(); } - super.setSingleAttribute(name, values.get(0)); + super.setSingleAttribute(name, valueToSet); } @Override diff --git a/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/UserAttributeLDAPStorageMapper.java b/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/UserAttributeLDAPStorageMapper.java index 00546afd81ef..ff7ab9ef5361 100644 --- a/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/UserAttributeLDAPStorageMapper.java +++ b/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/UserAttributeLDAPStorageMapper.java @@ -203,10 +203,11 @@ public void setSingleAttribute(String name, String value) { @Override public void setAttribute(String name, List values) { + String valueToSet = (values != null && values.size() > 0) ? values.get(0) : null; if (UserModel.USERNAME.equals(name)) { - checkDuplicateUsername(userModelAttrName, values.get(0), realm, ldapProvider.getSession(), this); + checkDuplicateUsername(userModelAttrName, valueToSet, realm, ldapProvider.getSession(), this); } else if (UserModel.EMAIL.equals(name)) { - checkDuplicateEmail(userModelAttrName, values.get(0), realm, ldapProvider.getSession(), this); + checkDuplicateEmail(userModelAttrName, valueToSet, realm, ldapProvider.getSession(), this); } if (setLDAPAttribute(name, values)) { super.setAttribute(name, values); diff --git a/model/jpa/src/main/java/org/keycloak/models/jpa/UserAdapter.java b/model/jpa/src/main/java/org/keycloak/models/jpa/UserAdapter.java index b62cc68c4442..ad80953ebcdb 100755 --- a/model/jpa/src/main/java/org/keycloak/models/jpa/UserAdapter.java +++ b/model/jpa/src/main/java/org/keycloak/models/jpa/UserAdapter.java @@ -164,17 +164,18 @@ public void setSingleAttribute(String name, String value) { @Override public void setAttribute(String name, List values) { + String valueToSet = (values != null && values.size() > 0) ? values.get(0) : null; if (UserModel.FIRST_NAME.equals(name)) { - user.setFirstName(values.get(0)); + user.setFirstName(valueToSet); return; } else if (UserModel.LAST_NAME.equals(name)) { - user.setLastName(values.get(0)); + user.setLastName(valueToSet); return; } else if (UserModel.EMAIL.equals(name)) { - setEmail(values.get(0)); + setEmail(valueToSet); return; } else if (UserModel.USERNAME.equals(name)) { - setUsername(values.get(0)); + setUsername(valueToSet); return; } // Remove all existing diff --git a/server-spi/src/main/java/org/keycloak/storage/adapter/AbstractUserAdapterFederatedStorage.java b/server-spi/src/main/java/org/keycloak/storage/adapter/AbstractUserAdapterFederatedStorage.java index 1a9d7f6f2cab..571379269e67 100644 --- a/server-spi/src/main/java/org/keycloak/storage/adapter/AbstractUserAdapterFederatedStorage.java +++ b/server-spi/src/main/java/org/keycloak/storage/adapter/AbstractUserAdapterFederatedStorage.java @@ -354,7 +354,7 @@ public void removeAttribute(String name) { @Override public void setAttribute(String name, List values) { if (UserModel.USERNAME.equals(name)) { - setUsername(values.get(0)); + setUsername((values != null && values.size() > 0) ? values.get(0) : null); } getFederatedStorage().setAttribute(realm, this.getId(), mapAttribute(name), values); diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPProvidersFullNameMapperTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPProvidersFullNameMapperTest.java new file mode 100644 index 000000000000..b561491a56e4 --- /dev/null +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPProvidersFullNameMapperTest.java @@ -0,0 +1,166 @@ +/* + * Copyright 2017 Red Hat, Inc. and/or its affiliates + * and other contributors as indicated by the @author tags. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.keycloak.testsuite.federation.ldap; + +import org.junit.Assert; +import org.junit.ClassRule; +import org.junit.Test; +import org.keycloak.component.ComponentModel; +import org.keycloak.models.RealmModel; +import org.keycloak.models.UserModel; +import org.keycloak.models.utils.KeycloakModelUtils; +import org.keycloak.storage.ldap.LDAPStorageProvider; +import org.keycloak.storage.ldap.mappers.FullNameLDAPStorageMapper; +import org.keycloak.storage.ldap.mappers.FullNameLDAPStorageMapperFactory; +import org.keycloak.storage.ldap.mappers.LDAPStorageMapper; +import org.keycloak.storage.ldap.mappers.UserAttributeLDAPStorageMapper; +import org.keycloak.testsuite.util.LDAPRule; +import org.keycloak.testsuite.util.LDAPTestUtils; + +import java.util.ArrayList; +import java.util.Collections; + +import static org.hamcrest.Matchers.contains; +import static org.hamcrest.Matchers.empty; +import static org.hamcrest.Matchers.is; +import static org.junit.Assert.assertThat; + +/** + * @author Marek Posolda + * @author Martin Idel + */ +public class LDAPProvidersFullNameMapperTest extends AbstractLDAPTest { + + @ClassRule + public static LDAPRule ldapRule = new LDAPRule(); + + @Override + protected LDAPRule getLDAPRule() { + return ldapRule; + } + + @Override + protected void afterImportTestRealm() { + testingClient.server().run(session -> { + LDAPTestContext ctx = LDAPTestContext.init(session); + RealmModel appRealm = ctx.getRealm(); + + LDAPTestUtils.addZipCodeLDAPMapper(appRealm, ctx.getLdapModel()); + LDAPTestUtils.removeAllLDAPUsers(ctx.getLdapProvider(), appRealm); + + appRealm.getClientByClientId("test-app").setDirectAccessGrantsEnabled(true); + + // assert that user "fullnameUser" is not in local DB + Assert.assertNull(session.users().getUserByUsername("fullname", appRealm)); + + // Add the user with some fullName into LDAP directly. Ensure that fullName is saved into "cn" attribute in LDAP (currently mapped to model firstName) + ComponentModel ldapModel = LDAPTestUtils.getLdapProviderModel(session, appRealm); + + // add fullname mapper to the provider and remove "firstNameMapper". For this test, we will simply map full name to the LDAP attribute, which was before firstName ( "givenName" on active directory, "cn" on other LDAP servers) + ComponentModel firstNameMapper = LDAPTestUtils.getSubcomponentByName(appRealm, ldapModel, "first name"); + String ldapFirstNameAttributeName = firstNameMapper.getConfig().getFirst(UserAttributeLDAPStorageMapper.LDAP_ATTRIBUTE); + appRealm.removeComponent(firstNameMapper); + + ComponentModel fullNameMapperModel = KeycloakModelUtils.createComponentModel("full name", ldapModel.getId(), FullNameLDAPStorageMapperFactory.PROVIDER_ID, LDAPStorageMapper.class.getName(), + FullNameLDAPStorageMapper.LDAP_FULL_NAME_ATTRIBUTE, ldapFirstNameAttributeName, + FullNameLDAPStorageMapper.READ_ONLY, "false"); + appRealm.addComponentModel(fullNameMapperModel); + }); + } + + @Test + public void testUpdatingFirstNameAndLastNamePropagatesToFullnameMapper() { + + testingClient.server().run(session -> { + LDAPTestContext ctx = LDAPTestContext.init(session); + RealmModel appRealm = ctx.getRealm(); + + ComponentModel ldapModel = LDAPTestUtils.getLdapProviderModel(session, appRealm); + LDAPStorageProvider ldapFedProvider = LDAPTestUtils.getLdapProvider(session, ldapModel); + LDAPTestUtils.addLDAPUser(ldapFedProvider, appRealm, "fullname", "James", "Dee", "fullname@email.org", null, "4578"); + + // Assert user is successfully imported in Keycloak DB now with correct firstName and lastName + LDAPTestAsserts.assertUserImported(session.users(), appRealm, "fullname", "James", "Dee", "fullname@email.org", "4578"); + }); + + // Assert user will be changed in LDAP too + testingClient.server().run(session -> { + LDAPTestContext ctx = LDAPTestContext.init(session); + RealmModel appRealm = ctx.getRealm(); + + UserModel fullnameUser = session.users().getUserByUsername("fullname", appRealm); + fullnameUser.setFirstName("James2"); + fullnameUser.setLastName("Dee2"); + }); + + // Assert changed user available in Keycloak + testingClient.server().run(session -> { + LDAPTestContext ctx = LDAPTestContext.init(session); + RealmModel appRealm = ctx.getRealm(); + + // Assert user is successfully imported in Keycloak DB now with correct firstName and lastName + LDAPTestAsserts.assertUserImported(session.users(), appRealm, "fullname", "James2", "Dee2", "fullname@email.org", "4578"); + + // Remove "fullnameUser" to assert he is removed from LDAP. + UserModel fullnameUser = session.users().getUserByUsername("fullname", appRealm); + session.users().removeUser(appRealm, fullnameUser); + }); + } + + @Test + public void testUpdatingAttributesWorksEvenWithEmptyAttributes() { + + testingClient.server().run(session -> { + LDAPTestContext ctx = LDAPTestContext.init(session); + RealmModel appRealm = ctx.getRealm(); + + ComponentModel ldapModel = LDAPTestUtils.getLdapProviderModel(session, appRealm); + LDAPStorageProvider ldapFedProvider = LDAPTestUtils.getLdapProvider(session, ldapModel); + LDAPTestUtils.addLDAPUser(ldapFedProvider, appRealm, "fullname", "James", "Dee", "fullname@email.org", null, "4578"); + + LDAPTestAsserts.assertUserImported(session.users(), appRealm, "fullname", "James", "Dee", "fullname@email.org", "4578"); + }); + + testingClient.server().run(session -> { + LDAPTestContext ctx = LDAPTestContext.init(session); + RealmModel appRealm = ctx.getRealm(); + + UserModel fullnameUser = session.users().getUserByUsername("fullname", appRealm); + fullnameUser.setAttribute("myAttribute", Collections.singletonList("test")); + fullnameUser.setAttribute("myEmptyAttribute", new ArrayList<>()); + fullnameUser.setAttribute("myNullAttribute", null); + }); + + // Assert changed user available in Keycloak + testingClient.server().run(session -> { + LDAPTestContext ctx = LDAPTestContext.init(session); + RealmModel appRealm = ctx.getRealm(); + + // Assert user is successfully imported in Keycloak DB now with correct firstName and lastName + LDAPTestAsserts.assertUserImported(session.users(), appRealm, "fullname", "James", "Dee", "fullname@email.org", "4578"); + + UserModel fullnameUser = session.users().getUserByUsername("fullname", appRealm); + assertThat(fullnameUser.getAttribute("myAttribute"), contains("test")); + assertThat(fullnameUser.getAttribute("myEmptyAttribute"), is(empty())); + assertThat(fullnameUser.getAttribute("myNullAttribute"), is(empty())); + + // Remove "fullnameUser" to assert he is removed from LDAP. + session.users().removeUser(appRealm, fullnameUser); + }); + } +} diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPProvidersIntegrationTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPProvidersIntegrationTest.java index f5059e48f027..11b15da388f7 100755 --- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPProvidersIntegrationTest.java +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPProvidersIntegrationTest.java @@ -36,7 +36,6 @@ import org.keycloak.models.cache.CachedUserModel; import org.keycloak.models.credential.PasswordCredentialModel; import org.keycloak.models.utils.KeycloakModelUtils; -import org.keycloak.models.utils.ModelToRepresentation; import org.keycloak.representations.AccessToken; import org.keycloak.representations.idm.ComponentRepresentation; import org.keycloak.representations.idm.CredentialRepresentation; @@ -49,8 +48,6 @@ import org.keycloak.storage.ldap.LDAPConfig; import org.keycloak.storage.ldap.LDAPStorageProvider; import org.keycloak.storage.ldap.idm.model.LDAPObject; -import org.keycloak.storage.ldap.mappers.FullNameLDAPStorageMapper; -import org.keycloak.storage.ldap.mappers.FullNameLDAPStorageMapperFactory; import org.keycloak.storage.ldap.mappers.HardcodedLDAPAttributeMapper; import org.keycloak.storage.ldap.mappers.HardcodedLDAPAttributeMapperFactory; import org.keycloak.storage.ldap.mappers.HardcodedLDAPGroupStorageMapper; @@ -68,7 +65,6 @@ import javax.naming.AuthenticationException; import javax.ws.rs.core.Response; - import java.util.Arrays; import java.util.List; import java.util.Map; @@ -554,80 +550,6 @@ public void testCommaInUsername() { } - // TODO: Rather separate test class for fullNameMapper to better test all the possibilities - @Test - public void testFullNameMapper() { - - ComponentRepresentation firstNameMapperRep = testingClient.server().fetch(session -> { - LDAPTestContext ctx = LDAPTestContext.init(session); - RealmModel appRealm = ctx.getRealm(); - - // assert that user "fullnameUser" is not in local DB - Assert.assertNull(session.users().getUserByUsername("fullname", appRealm)); - - // Add the user with some fullName into LDAP directly. Ensure that fullName is saved into "cn" attribute in LDAP (currently mapped to model firstName) - ComponentModel ldapModel = LDAPTestUtils.getLdapProviderModel(session, appRealm); - LDAPStorageProvider ldapFedProvider = LDAPTestUtils.getLdapProvider(session, ldapModel); - LDAPTestUtils.addLDAPUser(ldapFedProvider, appRealm, "fullname", "James Dee", "Dee", "fullname@email.org", null, "4578"); - - // add fullname mapper to the provider and remove "firstNameMapper". For this test, we will simply map full name to the LDAP attribute, which was before firstName ( "givenName" on active directory, "cn" on other LDAP servers) - ComponentModel firstNameMapper = LDAPTestUtils.getSubcomponentByName(appRealm, ldapModel, "first name"); - String ldapFirstNameAttributeName = firstNameMapper.getConfig().getFirst(UserAttributeLDAPStorageMapper.LDAP_ATTRIBUTE); - appRealm.removeComponent(firstNameMapper); - - ComponentRepresentation firstNameMapperRepp = ModelToRepresentation.toRepresentation(session, firstNameMapper, true); - - ComponentModel fullNameMapperModel = KeycloakModelUtils.createComponentModel("full name", ldapModel.getId(), FullNameLDAPStorageMapperFactory.PROVIDER_ID, LDAPStorageMapper.class.getName(), - FullNameLDAPStorageMapper.LDAP_FULL_NAME_ATTRIBUTE, ldapFirstNameAttributeName, - FullNameLDAPStorageMapper.READ_ONLY, "false"); - appRealm.addComponentModel(fullNameMapperModel); - - return firstNameMapperRepp; - }, ComponentRepresentation.class); - - testingClient.server().run(session -> { - LDAPTestContext ctx = LDAPTestContext.init(session); - RealmModel appRealm = ctx.getRealm(); - - // Assert user is successfully imported in Keycloak DB now with correct firstName and lastName - LDAPTestAsserts.assertUserImported(session.users(), appRealm, "fullname", "James", "Dee", "fullname@email.org", "4578"); - }); - - // Assert user will be changed in LDAP too - testingClient.server().run(session -> { - LDAPTestContext ctx = LDAPTestContext.init(session); - RealmModel appRealm = ctx.getRealm(); - - UserModel fullnameUser = session.users().getUserByUsername("fullname", appRealm); - fullnameUser.setFirstName("James2"); - fullnameUser.setLastName("Dee2"); - }); - - - // Assert changed user available in Keycloak - testingClient.server().run(session -> { - LDAPTestContext ctx = LDAPTestContext.init(session); - RealmModel appRealm = ctx.getRealm(); - - // Assert user is successfully imported in Keycloak DB now with correct firstName and lastName - LDAPTestAsserts.assertUserImported(session.users(), appRealm, "fullname", "James2", "Dee2", "fullname@email.org", "4578"); - - // Remove "fullnameUser" to assert he is removed from LDAP. Revert mappers to previous state - UserModel fullnameUser = session.users().getUserByUsername("fullname", appRealm); - session.users().removeUser(appRealm, fullnameUser); - - // Revert mappers - ComponentModel fullNameMapperModel = LDAPTestUtils.getSubcomponentByName(appRealm, ctx.getLdapModel(), "full name"); - appRealm.removeComponent(fullNameMapperModel); - }); - - firstNameMapperRep.setId(null); - Response response = testRealm().components().add(firstNameMapperRep); - Assert.assertEquals(201, response.getStatus()); - response.close(); - } - - @Test public void testHardcodedAttributeMapperTest() throws Exception { // Create hardcoded mapper for "description" From 5431670e9c794f7ef1454415b204ee40a65e4380 Mon Sep 17 00:00:00 2001 From: Martin Idel Date: Mon, 27 Jul 2020 16:34:39 +0200 Subject: [PATCH 07/30] KEYCLOAK-14870: Fix bug where user is incorrectly imported Bug: SerializedBrokeredIdentityContext was changed to mirror UserModel changes. However, when creating the user in LDAP, the username must be provided first (everything else can be handled via attributes). (cherry picked from commit 97400827d2f4e95a9576731c134c97f8d1f23157) --- .../UserAttributeLDAPStorageMapper.java | 28 +++++++++---------- .../models/cache/infinispan/UserAdapter.java | 7 +++++ .../storage/adapter/InMemoryUserAdapter.java | 8 ++++++ .../AbstractUserAdapterFederatedStorage.java | 8 +++--- .../IdpCreateUserIfUniqueAuthenticator.java | 7 ++--- .../ldap/LDAPProvidersIntegrationTest.java | 24 ++++++++++++++++ 6 files changed, 59 insertions(+), 23 deletions(-) diff --git a/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/UserAttributeLDAPStorageMapper.java b/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/UserAttributeLDAPStorageMapper.java index ff7ab9ef5361..475429389108 100644 --- a/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/UserAttributeLDAPStorageMapper.java +++ b/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/UserAttributeLDAPStorageMapper.java @@ -22,6 +22,7 @@ import org.keycloak.models.KeycloakSession; import org.keycloak.models.LDAPConstants; import org.keycloak.models.ModelDuplicateException; +import org.keycloak.models.ModelException; import org.keycloak.models.RealmModel; import org.keycloak.models.UserModel; import org.keycloak.models.utils.KeycloakModelUtils; @@ -43,8 +44,6 @@ import java.util.Map; import java.util.Set; -import org.keycloak.models.ModelException; - /** * @author Marek Posolda */ @@ -192,24 +191,21 @@ public UserModel proxy(final LDAPObject ldapUser, UserModel delegate, RealmModel @Override public void setSingleAttribute(String name, String value) { if (UserModel.USERNAME.equals(name)) { - checkDuplicateUsername(userModelAttrName, value, realm, ldapProvider.getSession(), this); + setUsername(value); } else if (UserModel.EMAIL.equals(name)) { - checkDuplicateEmail(userModelAttrName, value, realm, ldapProvider.getSession(), this); - } - if (setLDAPAttribute(name, value)) { + setEmail(value); + } else if (setLDAPAttribute(name, value)) { super.setSingleAttribute(name, value); } } @Override public void setAttribute(String name, List values) { - String valueToSet = (values != null && values.size() > 0) ? values.get(0) : null; if (UserModel.USERNAME.equals(name)) { - checkDuplicateUsername(userModelAttrName, valueToSet, realm, ldapProvider.getSession(), this); + setUsername((values != null && values.size() > 0) ? values.get(0) : null); } else if (UserModel.EMAIL.equals(name)) { - checkDuplicateEmail(userModelAttrName, valueToSet, realm, ldapProvider.getSession(), this); - } - if (setLDAPAttribute(name, values)) { + setEmail((values != null && values.size() > 0) ? values.get(0) : null); + } else if (setLDAPAttribute(name, values)) { super.setAttribute(name, values); } } @@ -223,17 +219,19 @@ public void removeAttribute(String name) { @Override public void setUsername(String username) { - checkDuplicateUsername(userModelAttrName, username, realm, ldapProvider.getSession(), this); - setLDAPAttribute(UserModel.USERNAME, username); - super.setUsername(username); + String lowercaseUsername = KeycloakModelUtils.toLowerCaseSafe(username); + checkDuplicateUsername(userModelAttrName, lowercaseUsername, realm, ldapProvider.getSession(), this); + setLDAPAttribute(UserModel.USERNAME, lowercaseUsername); + super.setUsername(lowercaseUsername); } @Override public void setEmail(String email) { + String lowercaseEmail = KeycloakModelUtils.toLowerCaseSafe(email); checkDuplicateEmail(userModelAttrName, email, realm, ldapProvider.getSession(), this); setLDAPAttribute(UserModel.EMAIL, email); - super.setEmail(email); + super.setEmail(lowercaseEmail); } @Override diff --git a/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/UserAdapter.java b/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/UserAdapter.java index 938adec47c95..74043f582906 100755 --- a/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/UserAdapter.java +++ b/model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/UserAdapter.java @@ -167,12 +167,19 @@ public void setEnabled(boolean enabled) { @Override public void setSingleAttribute(String name, String value) { getDelegateForUpdate(); + if (UserModel.USERNAME.equals(name) || UserModel.EMAIL.equals(name)) { + value = KeycloakModelUtils.toLowerCaseSafe(value); + } updated.setSingleAttribute(name, value); } @Override public void setAttribute(String name, List values) { getDelegateForUpdate(); + if (UserModel.USERNAME.equals(name) || UserModel.EMAIL.equals(name)) { + String lowerCasedFirstValue = KeycloakModelUtils.toLowerCaseSafe((values != null && values.size() > 0) ? values.get(0) : null); + if (lowerCasedFirstValue != null) values.set(0, lowerCasedFirstValue); + } updated.setAttribute(name, values); } diff --git a/server-spi-private/src/main/java/org/keycloak/storage/adapter/InMemoryUserAdapter.java b/server-spi-private/src/main/java/org/keycloak/storage/adapter/InMemoryUserAdapter.java index a1704cac6293..f2f541586f88 100644 --- a/server-spi-private/src/main/java/org/keycloak/storage/adapter/InMemoryUserAdapter.java +++ b/server-spi-private/src/main/java/org/keycloak/storage/adapter/InMemoryUserAdapter.java @@ -26,6 +26,7 @@ import org.keycloak.models.UserModel; import org.keycloak.models.UserModelDefaultMethods; import org.keycloak.models.utils.DefaultRoles; +import org.keycloak.models.utils.KeycloakModelUtils; import org.keycloak.models.utils.RoleUtils; import org.keycloak.storage.ReadOnlyException; @@ -123,6 +124,9 @@ public void setEnabled(boolean enabled) { @Override public void setSingleAttribute(String name, String value) { checkReadonly(); + if (UserModel.USERNAME.equals(name) || UserModel.EMAIL.equals(name)) { + value = KeycloakModelUtils.toLowerCaseSafe(value); + } attributes.putSingle(name, value); } @@ -130,6 +134,10 @@ public void setSingleAttribute(String name, String value) { @Override public void setAttribute(String name, List values) { checkReadonly(); + if (UserModel.USERNAME.equals(name) || UserModel.EMAIL.equals(name)) { + String lowerCasedFirstValue = KeycloakModelUtils.toLowerCaseSafe((values != null && values.size() > 0) ? values.get(0) : null); + if (lowerCasedFirstValue != null) values.set(0, lowerCasedFirstValue); + } attributes.put(name, values); } diff --git a/server-spi/src/main/java/org/keycloak/storage/adapter/AbstractUserAdapterFederatedStorage.java b/server-spi/src/main/java/org/keycloak/storage/adapter/AbstractUserAdapterFederatedStorage.java index 571379269e67..7703d4d315e1 100644 --- a/server-spi/src/main/java/org/keycloak/storage/adapter/AbstractUserAdapterFederatedStorage.java +++ b/server-spi/src/main/java/org/keycloak/storage/adapter/AbstractUserAdapterFederatedStorage.java @@ -340,9 +340,9 @@ public void setCreatedTimestamp(Long timestamp) { public void setSingleAttribute(String name, String value) { if (UserModel.USERNAME.equals(name)) { setUsername(value); + } else { + getFederatedStorage().setSingleAttribute(realm, this.getId(), mapAttribute(name), value); } - getFederatedStorage().setSingleAttribute(realm, this.getId(), mapAttribute(name), value); - } @Override @@ -355,9 +355,9 @@ public void removeAttribute(String name) { public void setAttribute(String name, List values) { if (UserModel.USERNAME.equals(name)) { setUsername((values != null && values.size() > 0) ? values.get(0) : null); + } else { + getFederatedStorage().setAttribute(realm, this.getId(), mapAttribute(name), values); } - getFederatedStorage().setAttribute(realm, this.getId(), mapAttribute(name), values); - } @Override diff --git a/services/src/main/java/org/keycloak/authentication/authenticators/broker/IdpCreateUserIfUniqueAuthenticator.java b/services/src/main/java/org/keycloak/authentication/authenticators/broker/IdpCreateUserIfUniqueAuthenticator.java index e0b2363de3bb..e6ba64a492dd 100644 --- a/services/src/main/java/org/keycloak/authentication/authenticators/broker/IdpCreateUserIfUniqueAuthenticator.java +++ b/services/src/main/java/org/keycloak/authentication/authenticators/broker/IdpCreateUserIfUniqueAuthenticator.java @@ -74,12 +74,11 @@ protected void authenticateImpl(AuthenticationFlowContext context, SerializedBro UserModel federatedUser = session.users().addUser(realm, username); federatedUser.setEnabled(true); - federatedUser.setEmail(brokerContext.getEmail()); - federatedUser.setFirstName(brokerContext.getFirstName()); - federatedUser.setLastName(brokerContext.getLastName()); for (Map.Entry> attr : serializedCtx.getAttributes().entrySet()) { - federatedUser.setAttribute(attr.getKey(), attr.getValue()); + if (!UserModel.USERNAME.equalsIgnoreCase(attr.getKey())) { + federatedUser.setAttribute(attr.getKey(), attr.getValue()); + } } AuthenticatorConfigModel config = context.getAuthenticatorConfig(); diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPProvidersIntegrationTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPProvidersIntegrationTest.java index 11b15da388f7..67b1c682f69a 100755 --- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPProvidersIntegrationTest.java +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPProvidersIntegrationTest.java @@ -39,6 +39,7 @@ import org.keycloak.representations.AccessToken; import org.keycloak.representations.idm.ComponentRepresentation; import org.keycloak.representations.idm.CredentialRepresentation; +import org.keycloak.representations.idm.RealmRepresentation; import org.keycloak.representations.idm.UserRepresentation; import org.keycloak.services.managers.RealmManager; import org.keycloak.storage.ReadOnlyException; @@ -1143,4 +1144,27 @@ public void testEmailVerifiedFromImport(){ Assert.assertFalse(userNotVerified.get(0).isEmailVerified()); }); } + + @Test + public void testUserAttributeLDAPStorageMapperHandlingUsernameLowercasing() { + setEditingUsernameAllowed(false); + + testingClient.server().run(session -> { + LDAPTestContext ctx = LDAPTestContext.init(session); + RealmModel appRealm = ctx.getRealm(); + + UserModel johnkeycloak = session.users().getUserByUsername("johnkeycloak", appRealm); + // If the username was case sensitive in the username-cn mapper, then this would throw an exception + johnkeycloak.setSingleAttribute(UserModel.USERNAME, "JohnKeycloak"); + }); + + // Cleanup + setEditingUsernameAllowed(true); + } + + private void setEditingUsernameAllowed(boolean allowed) { + RealmRepresentation realmRepresentation = testRealm().toRepresentation(); + realmRepresentation.setEditUsernameAllowed(allowed); + testRealm().update(realmRepresentation); + } } From 641d3c50b6c9baea6c1c8c336aa4ea9ada74f992 Mon Sep 17 00:00:00 2001 From: mposolda Date: Tue, 28 Jul 2020 13:03:27 +0200 Subject: [PATCH 08/30] KEYCLOAK-14892 NullPointerException when group mappings for LDAP users are accessed (cherry picked from commit c4fca5895f9715302aa8dcd411c8e4bd349f28e8) --- .../group/GroupLDAPStorageMapperFactory.java | 15 ++++++++-- .../membership/group/GroupMapperConfig.java | 5 +++- ...LDAPGroupMapperSyncWithGroupsPathTest.java | 30 +++++++++++++++++++ 3 files changed, 46 insertions(+), 4 deletions(-) diff --git a/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/membership/group/GroupLDAPStorageMapperFactory.java b/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/membership/group/GroupLDAPStorageMapperFactory.java index 0e502d0da62d..dfa6251ca7ae 100644 --- a/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/membership/group/GroupLDAPStorageMapperFactory.java +++ b/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/membership/group/GroupLDAPStorageMapperFactory.java @@ -17,6 +17,7 @@ package org.keycloak.storage.ldap.mappers.membership.group; +import org.keycloak.common.util.ObjectUtil; import org.keycloak.component.ComponentModel; import org.keycloak.component.ComponentValidationException; import org.keycloak.models.KeycloakSession; @@ -264,6 +265,7 @@ public void onCreate(KeycloakSession session, RealmModel realm, ComponentModel m ComponentModel parentModel = realm.getComponent(model.getParentId()); UserStorageProviderModel parent = new UserStorageProviderModel(parentModel); onParentUpdate(realm, parent, parent, model); + setDefaultGroupsPath(realm, model); } @@ -272,6 +274,14 @@ public void onUpdate(KeycloakSession session, RealmModel realm, ComponentModel o ComponentModel parentModel = realm.getComponent(newModel.getParentId()); UserStorageProviderModel parent = new UserStorageProviderModel(parentModel); onParentUpdate(realm, parent, parent, newModel); + setDefaultGroupsPath(realm, newModel); + } + + private void setDefaultGroupsPath(RealmModel realm, ComponentModel mapperModel) { + if (ObjectUtil.isBlank(mapperModel.getConfig().getFirst(GroupMapperConfig.LDAP_GROUPS_PATH))) { + mapperModel.getConfig().putSingle(GroupMapperConfig.LDAP_GROUPS_PATH, GroupMapperConfig.DEFAULT_LDAP_GROUPS_PATH); + realm.updateComponent(mapperModel); + } } @Override @@ -293,9 +303,8 @@ public void validateConfiguration(KeycloakSession session, RealmModel realm, Com LDAPUtils.validateCustomLdapFilter(config.getConfig().getFirst(GroupMapperConfig.GROUPS_LDAP_FILTER)); - checkMandatoryConfigAttribute(GroupMapperConfig.LDAP_GROUPS_PATH, "Groups Path", config); - String group = config.getConfig().getFirst(GroupMapperConfig.LDAP_GROUPS_PATH).trim(); - if (!"/".equals(group) && KeycloakModelUtils.findGroupByPath(realm, group) == null) { + String group = new GroupMapperConfig(config).getGroupsPath(); + if (!GroupMapperConfig.DEFAULT_LDAP_GROUPS_PATH.equals(group) && KeycloakModelUtils.findGroupByPath(realm, group) == null) { throw new ComponentValidationException("ldapErrorMissingGroupsPathGroup"); } } diff --git a/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/membership/group/GroupMapperConfig.java b/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/membership/group/GroupMapperConfig.java index 399651a050eb..f5067a53604d 100644 --- a/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/membership/group/GroupMapperConfig.java +++ b/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/membership/group/GroupMapperConfig.java @@ -17,6 +17,7 @@ package org.keycloak.storage.ldap.mappers.membership.group; +import org.keycloak.common.util.ObjectUtil; import org.keycloak.component.ComponentModel; import org.keycloak.models.LDAPConstants; import org.keycloak.models.ModelException; @@ -63,6 +64,7 @@ public class GroupMapperConfig extends CommonLDAPGroupMapperConfig { // Keycloak group path the LDAP groups are added to (default: top level "/") public static final String LDAP_GROUPS_PATH = "groups.path"; + public static final String DEFAULT_LDAP_GROUPS_PATH = "/"; public GroupMapperConfig(ComponentModel mapperModel) { super(mapperModel); @@ -129,7 +131,8 @@ public String getUserGroupsRetrieveStrategy() { } public String getGroupsPath() { - return mapperModel.getConfig().getFirst(LDAP_GROUPS_PATH); + String groupsPath = mapperModel.getConfig().getFirst(LDAP_GROUPS_PATH); + return ObjectUtil.isBlank(groupsPath) ? DEFAULT_LDAP_GROUPS_PATH : groupsPath.trim(); } public String getGroupsPathWithTrailingSlash() { diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPGroupMapperSyncWithGroupsPathTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPGroupMapperSyncWithGroupsPathTest.java index ae8f6bcd0ca3..20c6bcbfaf35 100644 --- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPGroupMapperSyncWithGroupsPathTest.java +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPGroupMapperSyncWithGroupsPathTest.java @@ -17,6 +17,8 @@ package org.keycloak.testsuite.federation.ldap; +import javax.ws.rs.core.Response; + import org.junit.Assert; import org.junit.Before; import org.junit.ClassRule; @@ -28,6 +30,7 @@ import org.keycloak.models.LDAPConstants; import org.keycloak.models.RealmModel; import org.keycloak.models.utils.KeycloakModelUtils; +import org.keycloak.representations.idm.ComponentRepresentation; import org.keycloak.storage.ldap.LDAPStorageProvider; import org.keycloak.storage.ldap.LDAPUtils; import org.keycloak.storage.ldap.idm.model.LDAPObject; @@ -37,6 +40,7 @@ import org.keycloak.storage.ldap.mappers.membership.group.GroupLDAPStorageMapperFactory; import org.keycloak.storage.ldap.mappers.membership.group.GroupMapperConfig; import org.keycloak.storage.user.SynchronizationResult; +import org.keycloak.testsuite.admin.ApiUtil; import org.keycloak.testsuite.util.LDAPRule; import org.keycloak.testsuite.util.LDAPTestUtils; @@ -206,4 +210,30 @@ public void test02_syncWithDropNonExistingGroups() throws Exception { Assert.assertNotNull(KeycloakModelUtils.findGroupByPath(realm, "/outside")); }); } + + // KEYCLOAK-14892 + @Test + public void test03_createConfigurationWithoutGroupPath() throws Exception { + ComponentRepresentation groupMapperRep = findMapperRepByName("groupsMapper"); + + groupMapperRep.setId(null); + groupMapperRep.setName("different"); + groupMapperRep.getConfig().remove(GroupMapperConfig.LDAP_GROUPS_PATH); + groupMapperRep.getConfig().remove(GroupMapperConfig.LDAP_GROUPS_PATH); + + // Test that attempt to create configuration without LDAP_GROUPS_PATH configured should be still allowed due the backwards compatibility + Response response = adminClient.realm("test").components().add(groupMapperRep); + String newMapperId = ApiUtil.getCreatedId(response); + + try { + response.close(); + + // Load the mapper and assert default group path set + ComponentRepresentation newMapper = adminClient.realm("test").components().component(newMapperId).toRepresentation(); + Assert.assertEquals(GroupMapperConfig.DEFAULT_LDAP_GROUPS_PATH, newMapper.getConfig().getFirst(GroupMapperConfig.LDAP_GROUPS_PATH)); + } finally { + // revert new mapper + adminClient.realm("test").components().component(newMapperId).remove(); + } + } } From b38898865aab2d4283cd7cddcf66f0af83227d52 Mon Sep 17 00:00:00 2001 From: mposolda Date: Tue, 18 Aug 2020 12:32:53 +0200 Subject: [PATCH 09/30] KEYCLOAK-14996 Fix performance bottleneck in GroupLDAPStorageMapper.getAllKcGroups (cherry picked from commit a42778435027fe79abb3298f43b9465b10b9853a) --- .../group/GroupLDAPStorageMapper.java | 47 +++++++++++++++---- 1 file changed, 37 insertions(+), 10 deletions(-) diff --git a/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/membership/group/GroupLDAPStorageMapper.java b/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/membership/group/GroupLDAPStorageMapper.java index ea5a6cc1656a..9ac5f1cbcd9a 100644 --- a/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/membership/group/GroupLDAPStorageMapper.java +++ b/federation/ldap/src/main/java/org/keycloak/storage/ldap/mappers/membership/group/GroupLDAPStorageMapper.java @@ -18,6 +18,7 @@ package org.keycloak.storage.ldap.mappers.membership.group; import org.jboss.logging.Logger; +import org.keycloak.common.util.Time; import org.keycloak.component.ComponentModel; import org.keycloak.models.GroupModel; import org.keycloak.models.ModelException; @@ -835,20 +836,46 @@ protected Collection getKcSubGroups(RealmModel realm, GroupModel par } /** - * Provides a list of all KC groups (with their sub groups) from groups path. + * Provides a list of all KC groups (with their sub groups) from groups path configured by the "Groups Path" configuration property. */ protected List getAllKcGroups(RealmModel realm) { - List allGroups = new ArrayList<>(); - for (GroupModel group : getKcSubGroups(realm, null)) { - addGroupAndSubGroups(group, allGroups); + Long start = null; + if (logger.isTraceEnabled()) { + logger.trace("Calling getAllKcGroups started"); + start = Time.currentTimeMillis(); + } + + GroupModel topParentGroup = getKcGroupsPathGroup(realm); + + List allGroups = realm.getGroups(); + List filtered = new ArrayList<>(); + for (GroupModel group : allGroups) { + if (topParentGroup == null) { + filtered.add(group); + } else { + // Check if group is descendant of the topParentGroup (which is group configured by "Groups Path") + boolean finished = false; + GroupModel parent = group.getParent(); + while (!finished) { + if (parent == null) { + finished = true; + } else { + if (parent.getId().equals(topParentGroup.getId())) { + filtered.add(group); + finished = true; + } else { + parent = parent.getParent(); + } + } + } + } } - return allGroups; - } - private void addGroupAndSubGroups(GroupModel group, List allGroups) { - allGroups.add(group); - for (GroupModel subGroup : group.getSubGroups()) { - addGroupAndSubGroups(subGroup, allGroups); + if (logger.isTraceEnabled()) { + long took = Time.currentTimeMillis() - start; + logger.tracef("Calling getAllKcGroups took %d ms. Count of groups %d", took, filtered.size()); } + + return filtered; } } From be0e2846f76bbd498e14233a912795f21a3804f0 Mon Sep 17 00:00:00 2001 From: stianst Date: Thu, 20 Aug 2020 14:25:12 +0200 Subject: [PATCH 10/30] KEYCLOAK-15091 Fix issue with custom favicon.ico --- .../theme/rh-sso/welcome/resources/favicon.ico | Bin 4427 -> 0 bytes .../resources/theme/base/account/template.ftl | 2 +- .../main/resources/theme/base/admin/index.ftl | 2 +- .../main/resources/theme/base/login/template.ftl | 2 +- .../theme/keycloak/account/theme.properties | 1 + .../theme/keycloak/admin/theme.properties | 4 +++- .../theme/keycloak/login/theme.properties | 1 + .../resources/theme/keycloak/welcome/index.ftl | 2 +- .../theme/keycloak/welcome/theme.properties | 2 ++ 9 files changed, 11 insertions(+), 5 deletions(-) delete mode 100644 themes/src/main/resources-product/theme/rh-sso/welcome/resources/favicon.ico diff --git a/themes/src/main/resources-product/theme/rh-sso/welcome/resources/favicon.ico b/themes/src/main/resources-product/theme/rh-sso/welcome/resources/favicon.ico deleted file mode 100644 index 11c5cd26196c0bb5ad2c06c13e15449f7cc500bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4427 zcmchb^-~j$`@q=-Lu#l9j2=ptl!OY5lI{kTA&hPiq=cy;?WALrPygO0X_>80NMk1OCy8EX}r zbg5{3wQT|@DCn;L2Vipf`Ckf(tLHizs^-ryyUX^8=2l$PKlU|WM77}2NwQd+saXp) z-OH4Nr+!($OV&#$;dXbLn&YIP`0ruXTXqJChtZk_r)wY(G%2njp(UG|H?{J*5?r1yuGc)Y+)F1GKd=hsz6)}JDPL7gj%6m!$0JR)EeB)N`3Y9Bhn zxGWOhF;J8Nb_mB1Lv6T=h+nwCVOmT)YDZN(egL2kl$>^@$621#83NkVj;WRHC%@0b zBDen#dp%i3zk`j%zqgnL(>t-Y2<4=SG`AdBi97y7SrH=5;=br%%TKz>{Aj*tlh+YY zLn`QyTnW(P-fw*9(;GPRd_oVfcWxvmAcwHvFNGHO_k`GXP?}XfZFwcxdY3=ar=_CO zNDn&n3fPksXf9$%A|b@%%P2VYm4sGlXh?}KW;gi3(nTzqG9Wp#FhAYXQW;ST&g{u7 ziLb1EFmhbCbZ)ca6PTuW{OH4#BI3&@c`5PX4@h*p#qB}nZL^?47RfK-MnTueFB0gP}jfzM6TX~+oQsI5Ep(`@EO-fH- zc(x&$Jg+g9Rzwf0Dz)ipa=95}h0s$QU-b7EGzG7^d49pkGUg@MzEu^-od=ynYts~2 z4e4>(aJ^s3guWM>qqRwR7eQZ4Tb)J2D{mucR#4>7_z9E3pQuXPI4q*_!Q}*{dC<5e1}y@o6jymmCXiRr%Mz+rYKKQUv|O^IkI%wY2(Uid zVNzwTehVf&X<>y{3Vmi;z-yJ&y>%ds+$t>u3WF#Yf4`hPVX^R$CFbCu z;{;S7eO2*l>#6hxIRb{fk&OCXz-l4=>aqlPs6hC$%p%H^zirE}6?N)B!YVNCpHRql zRmuKkS}CzH#+_qsZ3*y|gahWuMTU{3Sk5wCPA!R#eg&eJc>pP$wwSE|SjV)8zTwfW z5A-FnRvp(A^{dge4R>P_Q0B2H`q^0gVnY`lpZv{Kyv5`o?J!xJzT_rm59Xp}`@t3p zBTUPiG74!hv(_0M)u=Ug=w_r6EbD+L5Kh`KL%fS^ zVC(IPv!YK+`x{5&3GfGmIE1%G8S>#n*FC*xPkK@p1f!=^gjSq=^IHTxh?*cW(Xxp; z&A%hHI3<<(52BuCM!o;OALrjot4N6_ar11yebekzkPUJP*h7C}4>m9!OB z=x?d(kXC1_=~knAK*AP2YRdkLghV1uP(ld(aGere+7-dJ?1s-{r$UaKA zIpv^iIs@FFJ@s_or;^*Ft}Ww6A3f}F=%|D1Uaj&E9{AUITjK-$L!*dBtumuwWAJdC zfJYfT=byvnWb?&_nb{ks1V`mkpXBNb@uXu@iR!=7?NMnTkOvfyGVY9>r-jmAS6wsa zlqjq3jU$7Kev}W3So|!>0L8X#na{6K)`Os13$rkVhReYpF&efcpmjHzgEDpONf9t-^K4ZZ}RA)T4q3o_W zITxcV(f3jCYul*7eN861Bsf&@pJnWwg%=MNTX{r#hVjK%j>|n?PybT=Tl@%U_3VCZ zCrhSWcU9mmbfaA_mT7U1LN48czlJsHFc@?T(-vq|a;$OS6dm~M-PCr>=frA!*Or1& zd%ze^?jz}CRGKD*;YyOjX$tjg^BPZ?88M+_yEuXix!|w5NhiFpLA8TLv+S;NK`0r0 zhV&v!?o!rrf|ciRy*bkhGxSKMdg?RnQeeu&L8=ypa1Tl zCvLu$zAn66zheM1m^#$L^%Gz6N}h?c=|?g?qEya73tr}?*UEK#xeW}vx*u6h26>}SOM11!((T4uk%N&t8RW7B$ z%xxSe!NCv&{R1-+bawcAgzA5dGT`cd<^QK*htv=xn_HjZ_92Ubd8$`=eF+cmK^d!A zI@|{k^MRIrPOSK)ws%&4m1()_QEIcD}CIUkR`h|ZDTHt?)? zqU)HQyn)+>7T*In)}l|yeTMfpS~-Y@eCuM1schxRF)MjGiAKzDpTK-q8MP}%b!dq z{6r2-V*SB^Ezb`Hw71U|>jiVWJ;xMKSO!B&e&o+XU-_5eXMb-E z>{|Id7)q+|ld3U!xC$S<%LAuAxmQs+Ccn3%JkBX6LYWmJ!yLDe_7JNLg;{4$X|znO z_a}0u%~&fP)X%}T#Qqk+QRXKz;^*VFg>qD`_t?5fjDwU5M;`EB0Ceu}6G+`UHLfT1 zC6}F}vyi}ndyfF9!>BfmE?Kc}1e41&a%LFwJLu9iiqXd`JY(`6ZbQuXTyt&azFJnA zI*iv~E>4$oygc8jd8cRQb54y;x12*$z3QFF=QP&sY}OHV56`V0AP9dd=y1q@i)}kx zs0{6?Ke_5xx*4oSP{i;4XKYdps@lElZlTzD;$-wd%uM4t;nYh~%Wcm7xzCelb`Jg! zJ}?8)12(w1H&~b*Qmurt!W;kPRc}IBt)bN)el`+Y0$JD+peQ?{$zAUwzEHtRSv*F*)owYWWzvr~J zorzPl)Iaa0eh5{ACOs0}#qQYh*4W-4jJTZ>K>?d6#kOTGnMP>@N3A`>u_W64mt`BS@cEjxw;C-D#DZ zVZb~^g@RT7`+Qb+=Q4OZ9~6gcbKTnFUt4;EB6yBvXgNTWqIEgTA!Fpb6;ryF4LpWQ zh56Y5Rt7vIufpdP6<+IYwZ?XVF%xs{wNkFgSCj_P5xi!4bPSnONkRAT>=1 zTSy*KD8Zrk#LjX|U*FZh^W4D5`m)pq4fOb>%i&~F6>q$;_&JP5d8=sLTNn08xJ z=a_lVIc^P}Vq5}0{J`|=2!J>gKzzWLR~=y+x?9lj7x zTe!nR+=B6KFu8EzjhGnPHDRclK>garLN**m=1~|e~CgYy=5VgF-vfpJW zSw}&nY{t2sfA-mB9NC%Qw+j##DV%{fLqe(!P|c&~SN!?Trj}MTAy@(X%F5D!khd~V z7>B6G4|r=#gEd0UcvG)~R2-#m;^TGLw*pj3JglX3ip-yC2%(yx`lg!$Nme?lRFk@t z0X%J?6IU^4;m$M|D4S2P+DIzPJcW3Nr1Ka;c6ys7F;AcZo4<(2>$ze%)NFerNiQHn z{+Y=N1pjz789D@+8!y2ShT|J+p+nr-DpTQ0b^rQP9*{N@;=Bzk5>TUsESipSmBVgK zWX*90O3=KDr2$#BO!5Va6Jt(@*zqt;7`-%S-&VAmp$tedSSZZ1b_*?L0yo0`I|6<8 ze*I!F6&xQLi0PI@Q>A`O)j2^ZoVUO%q*|2k(19B@=*!!Zb0&_S=Ty`{hj`!m8u9^0 zl*_~XvGF?eCD)~4vckN}+^0wCicRov-CDCzW)K#wUpnV&SRY#H@WNG1Ay4a|nF~A# zFjd;6X1$r_qY5b&5sPI3eS>A2vbn(NTw1?m?}kh_{!;@_g2b5vF$PPhId^M={7hRG z@T7WUxy;EYk%eVpMWyfuwR1e|VCkz~YV7{}kI>&&*?D>^Ugb%m0jV9v9AgcA1 ${msg("accountManagementTitle")} - + <#if properties.stylesCommon?has_content> <#list properties.stylesCommon?split(' ') as style> diff --git a/themes/src/main/resources/theme/base/admin/index.ftl b/themes/src/main/resources/theme/base/admin/index.ftl index 8281828adcbe..da1e6654d434 100755 --- a/themes/src/main/resources/theme/base/admin/index.ftl +++ b/themes/src/main/resources/theme/base/admin/index.ftl @@ -8,7 +8,7 @@ - + <#if properties.stylesCommon?has_content> <#list properties.stylesCommon?split(' ') as style> diff --git a/themes/src/main/resources/theme/base/login/template.ftl b/themes/src/main/resources/theme/base/login/template.ftl index eb3ec0147689..c6cf20565ab5 100644 --- a/themes/src/main/resources/theme/base/login/template.ftl +++ b/themes/src/main/resources/theme/base/login/template.ftl @@ -13,7 +13,7 @@ ${msg("loginTitle",(realm.displayName!''))} - + <#if properties.stylesCommon?has_content> <#list properties.stylesCommon?split(' ') as style> diff --git a/themes/src/main/resources/theme/keycloak/account/theme.properties b/themes/src/main/resources/theme/keycloak/account/theme.properties index d0c205a0037a..e7f1147934e1 100644 --- a/themes/src/main/resources/theme/keycloak/account/theme.properties +++ b/themes/src/main/resources/theme/keycloak/account/theme.properties @@ -1,4 +1,5 @@ parent=base +import=common/keycloak styles=css/account.css stylesCommon=node_modules/patternfly/dist/css/patternfly.min.css node_modules/patternfly/dist/css/patternfly-additions.min.css diff --git a/themes/src/main/resources/theme/keycloak/admin/theme.properties b/themes/src/main/resources/theme/keycloak/admin/theme.properties index 07ab7a5281a3..c1a677f5057f 100755 --- a/themes/src/main/resources/theme/keycloak/admin/theme.properties +++ b/themes/src/main/resources/theme/keycloak/admin/theme.properties @@ -1,3 +1,5 @@ parent=base +import=common/keycloak + styles=css/styles.css -stylesCommon=node_modules/patternfly/dist/css/patternfly.min.css node_modules/patternfly/dist/css/patternfly-additions.min.css node_modules/select2/select2.css lib/angular/treeview/css/angular.treeview.css node_modules/text-security/text-security.css \ No newline at end of file +stylesCommon=node_modules/patternfly/dist/css/patternfly.min.css node_modules/patternfly/dist/css/patternfly-additions.min.css node_modules/select2/select2.css lib/angular/treeview/css/angular.treeview.css node_modules/text-security/text-security.css diff --git a/themes/src/main/resources/theme/keycloak/login/theme.properties b/themes/src/main/resources/theme/keycloak/login/theme.properties index 417eb5c12258..6e5bdcf17f44 100644 --- a/themes/src/main/resources/theme/keycloak/login/theme.properties +++ b/themes/src/main/resources/theme/keycloak/login/theme.properties @@ -1,4 +1,5 @@ parent=base +import=common/keycloak styles=css/login.css stylesCommon=node_modules/patternfly/dist/css/patternfly.min.css node_modules/patternfly/dist/css/patternfly-additions.min.css lib/zocial/zocial.css diff --git a/themes/src/main/resources/theme/keycloak/welcome/index.ftl b/themes/src/main/resources/theme/keycloak/welcome/index.ftl index 8fd197888fc5..eba148bd31a9 100755 --- a/themes/src/main/resources/theme/keycloak/welcome/index.ftl +++ b/themes/src/main/resources/theme/keycloak/welcome/index.ftl @@ -29,7 +29,7 @@ - + <#if properties.stylesCommon?has_content> <#list properties.stylesCommon?split(' ') as style> diff --git a/themes/src/main/resources/theme/keycloak/welcome/theme.properties b/themes/src/main/resources/theme/keycloak/welcome/theme.properties index 7e48d4098477..c8bc26974862 100644 --- a/themes/src/main/resources/theme/keycloak/welcome/theme.properties +++ b/themes/src/main/resources/theme/keycloak/welcome/theme.properties @@ -1,4 +1,6 @@ styles=css/welcome.css +import=common/keycloak + stylesCommon=node_modules/patternfly/dist/css/patternfly.css node_modules/patternfly/dist/css/patternfly-additions.css documentationUrl=https://www.keycloak.org/documentation.html From ebec28e4c7cc17c944f3737217aa5bfabe24e586 Mon Sep 17 00:00:00 2001 From: mhajas Date: Thu, 20 Aug 2020 14:32:19 +0200 Subject: [PATCH 11/30] KEYCLOAK-15217 Revert accidentally removed changes from KEYCLOAK-14107 --- .../org/keycloak/models/ContentSecurityPolicyBuilder.java | 8 ++++---- .../org/keycloak/models/BrowserSecurityHeadersTest.java | 2 +- .../org/keycloak/testsuite/url/DefaultHostnameTest.java | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/server-spi-private/src/main/java/org/keycloak/models/ContentSecurityPolicyBuilder.java b/server-spi-private/src/main/java/org/keycloak/models/ContentSecurityPolicyBuilder.java index d765a4958d38..b220c1f50f0f 100644 --- a/server-spi-private/src/main/java/org/keycloak/models/ContentSecurityPolicyBuilder.java +++ b/server-spi-private/src/main/java/org/keycloak/models/ContentSecurityPolicyBuilder.java @@ -2,9 +2,9 @@ public class ContentSecurityPolicyBuilder { - private String frameSrc = "self"; - private String frameAncestors = "self"; - private String objectSrc = "none"; + private String frameSrc = "'self'"; + private String frameAncestors = "'self'"; + private String objectSrc = "'none'"; private boolean first; private StringBuilder sb; @@ -41,7 +41,7 @@ private void build(String k, String v) { } first = false; - sb.append(k).append(" '").append(v).append("';"); + sb.append(k).append(" ").append(v).append(";"); } } diff --git a/server-spi-private/src/test/java/org/keycloak/models/BrowserSecurityHeadersTest.java b/server-spi-private/src/test/java/org/keycloak/models/BrowserSecurityHeadersTest.java index c832827a5b59..7535e32c893c 100644 --- a/server-spi-private/src/test/java/org/keycloak/models/BrowserSecurityHeadersTest.java +++ b/server-spi-private/src/test/java/org/keycloak/models/BrowserSecurityHeadersTest.java @@ -11,7 +11,7 @@ public void contentSecurityPolicyBuilderTest() { assertEquals("frame-src 'self'; frame-ancestors 'self'; object-src 'none';", ContentSecurityPolicyBuilder.create().build()); assertEquals("frame-ancestors 'self'; object-src 'none';", ContentSecurityPolicyBuilder.create().frameSrc(null).build()); assertEquals("frame-src 'self'; object-src 'none';", ContentSecurityPolicyBuilder.create().frameAncestors(null).build()); - assertEquals("frame-src 'custom-frame-src'; frame-ancestors 'custom-frame-ancestors'; object-src 'none';", ContentSecurityPolicyBuilder.create().frameSrc("custom-frame-src").frameAncestors("custom-frame-ancestors").build()); + assertEquals("frame-src 'custom-frame-src'; frame-ancestors 'custom-frame-ancestors'; object-src 'none';", ContentSecurityPolicyBuilder.create().frameSrc("'custom-frame-src'").frameAncestors("'custom-frame-ancestors'").build()); } } diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/url/DefaultHostnameTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/url/DefaultHostnameTest.java index 00deb766723c..c60a0aafd4f1 100644 --- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/url/DefaultHostnameTest.java +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/url/DefaultHostnameTest.java @@ -255,7 +255,7 @@ private void assertAdminPage(String realm, String expectedFrontendUrl, String ex assertTrue(indexPage.contains("consoleBaseUrl = '" + new URI(expectedAdminUrl).getPath() +"/admin/" + realm + "/console/'")); assertTrue(indexPage.contains("resourceUrl = '" + new URI(expectedAdminUrl).getPath() +"/resources/")); - String cspHeader = response.getFirstHeader(BrowserSecurityHeaders.CONTENT_SECURITY_POLICY); + String cspHeader = response.getFirstHeader(BrowserSecurityHeaders.CONTENT_SECURITY_POLICY.getHeaderName()); if (expectedFrontendUrl.equalsIgnoreCase(expectedAdminUrl)) { assertEquals("frame-src 'self'; frame-ancestors 'self'; object-src 'none';", cspHeader); From c740ec4559f34f1c9e109bb13b8d9981249e401b Mon Sep 17 00:00:00 2001 From: mposolda Date: Wed, 19 Aug 2020 16:15:54 +0200 Subject: [PATCH 12/30] KEYCLOAK-15139 Backwards compatibility for LDAP Read-only mode with IMPORT_USERS enabled (cherry picked from commit bd48d7914d672d95f32ed17c11ea3f01ecf6d580) --- .../storage/ldap/LDAPStorageProvider.java | 4 + .../ldap/ReadonlyLDAPUserModelDelegate.java | 73 +++++++++ .../federation/ldap/LDAPReadOnlyTest.java | 142 ++++++++++++++++++ 3 files changed, 219 insertions(+) create mode 100644 federation/ldap/src/main/java/org/keycloak/storage/ldap/ReadonlyLDAPUserModelDelegate.java create mode 100644 testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPReadOnlyTest.java diff --git a/federation/ldap/src/main/java/org/keycloak/storage/ldap/LDAPStorageProvider.java b/federation/ldap/src/main/java/org/keycloak/storage/ldap/LDAPStorageProvider.java index 59b995c6cd49..ce84fb23b96b 100755 --- a/federation/ldap/src/main/java/org/keycloak/storage/ldap/LDAPStorageProvider.java +++ b/federation/ldap/src/main/java/org/keycloak/storage/ldap/LDAPStorageProvider.java @@ -175,7 +175,11 @@ protected UserModel proxy(RealmModel realm, UserModel local, LDAPObject ldapObje switch (editMode) { case READ_ONLY: + if (model.isImportEnabled()) { + proxied = new ReadonlyLDAPUserModelDelegate(local); + } else { proxied = new ReadOnlyUserModelDelegate(local); + } break; case WRITABLE: case UNSYNCED: diff --git a/federation/ldap/src/main/java/org/keycloak/storage/ldap/ReadonlyLDAPUserModelDelegate.java b/federation/ldap/src/main/java/org/keycloak/storage/ldap/ReadonlyLDAPUserModelDelegate.java new file mode 100644 index 000000000000..ba1b94a83342 --- /dev/null +++ b/federation/ldap/src/main/java/org/keycloak/storage/ldap/ReadonlyLDAPUserModelDelegate.java @@ -0,0 +1,73 @@ +/* + * Copyright 2016 Red Hat, Inc. and/or its affiliates + * and other contributors as indicated by the @author tags. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.keycloak.storage.ldap; + +import java.util.List; + +import org.keycloak.models.UserModel; +import org.keycloak.models.utils.UserModelDelegate; +import org.keycloak.storage.ReadOnlyException; + +/** + * Will be good to get rid of this class and use ReadOnlyUserModelDelegate, but it can't be done now due the backwards compatibility. + * See KEYCLOAK-15139 as an example + * + * @author Bill Burke + * @version $Revision: 1 $ + */ +public class ReadonlyLDAPUserModelDelegate extends UserModelDelegate implements UserModel { + + public ReadonlyLDAPUserModelDelegate(UserModel delegate) { + super(delegate); + } + + @Override + public void setUsername(String username) { + throw new ReadOnlyException("Federated storage is not writable"); + } + + @Override + public void setLastName(String lastName) { + throw new ReadOnlyException("Federated storage is not writable"); + } + + @Override + public void setFirstName(String first) { + throw new ReadOnlyException("Federated storage is not writable"); + } + + @Override + public void setEmail(String email) { + throw new ReadOnlyException("Federated storage is not writable"); + } + + @Override + public void setSingleAttribute(String name, String value) { + throw new ReadOnlyException("Federated storage is not writable"); + } + + @Override + public void setAttribute(String name, List values) { + throw new ReadOnlyException("Federated storage is not writable"); + } + + @Override + public void removeAttribute(String name) { + throw new ReadOnlyException("Federated storage is not writable"); + } +} diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPReadOnlyTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPReadOnlyTest.java new file mode 100644 index 000000000000..a56d1842c652 --- /dev/null +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/ldap/LDAPReadOnlyTest.java @@ -0,0 +1,142 @@ +/* + * Copyright 2020 Red Hat, Inc. and/or its affiliates + * and other contributors as indicated by the @author tags. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +package org.keycloak.testsuite.federation.ldap; + +import org.jboss.arquillian.graphene.page.Page; +import org.junit.Assert; +import org.junit.ClassRule; +import org.junit.FixMethodOrder; +import org.junit.Test; +import org.junit.runners.MethodSorters; +import org.keycloak.OAuth2Constants; +import org.keycloak.admin.client.resource.UserResource; +import org.keycloak.models.AuthenticationExecutionModel; +import org.keycloak.models.LDAPConstants; +import org.keycloak.models.RealmModel; +import org.keycloak.models.UserCredentialModel; +import org.keycloak.models.UserModel; +import org.keycloak.models.credential.OTPCredentialModel; +import org.keycloak.models.utils.TimeBasedOTP; +import org.keycloak.representations.idm.UserRepresentation; +import org.keycloak.storage.ReadOnlyException; +import org.keycloak.storage.StorageId; +import org.keycloak.storage.UserStorageProvider; +import org.keycloak.storage.ldap.LDAPStorageProvider; +import org.keycloak.storage.ldap.idm.model.LDAPObject; +import org.keycloak.testsuite.admin.ApiUtil; +import org.keycloak.testsuite.pages.AppPage; +import org.keycloak.testsuite.pages.LoginConfigTotpPage; +import org.keycloak.testsuite.util.LDAPRule; +import org.keycloak.testsuite.util.LDAPTestUtils; +import org.openqa.selenium.By; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +/** + * Test for more advanced scenarios related to LDAP read-only mode + * + * @author Marek Posolda + */ +@FixMethodOrder(MethodSorters.NAME_ASCENDING) +public class LDAPReadOnlyTest extends AbstractLDAPTest { + + @ClassRule + public static LDAPRule ldapRule = new LDAPRule(); + + @Override + protected LDAPRule getLDAPRule() { + return ldapRule; + } + + @Page + protected LoginConfigTotpPage totpPage; + + private TimeBasedOTP totp = new TimeBasedOTP(); + + @Override + protected void afterImportTestRealm() { + testingClient.server().run(session -> { + LDAPTestContext ctx = LDAPTestContext.init(session); + RealmModel appRealm = ctx.getRealm(); + + LDAPTestUtils.addZipCodeLDAPMapper(appRealm, ctx.getLdapModel()); + + // Delete all LDAP users and add some new for testing + LDAPTestUtils.removeAllLDAPUsers(ctx.getLdapProvider(), appRealm); + + LDAPObject john = LDAPTestUtils.addLDAPUser(ctx.getLdapProvider(), appRealm, "johnkeycloak", "John", "Doe", "john@email.org", null, "1234"); + LDAPTestUtils.updateLDAPPassword(ctx.getLdapProvider(), john, "Password1"); + + LDAPObject existing = LDAPTestUtils.addLDAPUser(ctx.getLdapProvider(), appRealm, "existing", "Existing", "Foo", "existing@email.org", null, "5678"); + + appRealm.getClientByClientId("test-app").setDirectAccessGrantsEnabled(true); + + LDAPStorageProvider ldapFedProvider = LDAPTestUtils.getLdapProvider(session, ctx.getLdapModel()); + ldapFedProvider.getModel().put(LDAPConstants.EDIT_MODE, UserStorageProvider.EditMode.READ_ONLY.toString()); + appRealm.updateComponent(ldapFedProvider.getModel()); + }); + } + + + // KEYCLOAK-15139 + @Test + public void testReadOnlyWithTOTPEnabled() { + // Set TOTP required + setTotpRequirementExecutionForRealm(AuthenticationExecutionModel.Requirement.REQUIRED); + + // Authenticate as the LDAP user and assert it works + loginPage.open(); + loginPage.login("johnkeycloak", "Password1"); + + assertTrue(totpPage.isCurrent()); + assertFalse(totpPage.isCancelDisplayed()); + + // KEYCLOAK-11753 - Verify OTP label element present on "Configure OTP" required action form + driver.findElement(By.id("userLabel")); + + totpPage.configure(totp.generateTOTP(totpPage.getTotpSecret())); + + Assert.assertEquals(AppPage.RequestType.AUTH_RESPONSE, appPage.getRequestType()); + Assert.assertNotNull(oauth.getCurrentQuery().get(OAuth2Constants.CODE)); + + // Revert TOTP + setTotpRequirementExecutionForRealm(AuthenticationExecutionModel.Requirement.CONDITIONAL); + UserResource user = ApiUtil.findUserByUsernameId(testRealm(), "johnkeycloak"); + String totpCredentialId = user.credentials().stream() + .filter(credentialRep -> credentialRep.getType().equals(OTPCredentialModel.TYPE)) + .findFirst().get().getId(); + user.removeCredential(totpCredentialId); + } + + private void setTotpRequirementExecutionForRealm(AuthenticationExecutionModel.Requirement requirement) { + adminClient.realm("test").flows().getExecutions("browser"). + stream().filter(execution -> execution.getDisplayName().equals("Browser - Conditional OTP")) + .forEach(execution -> + {execution.setRequirement(requirement.name()); + adminClient.realm("test").flows().updateExecutions("browser", execution);}); + } + + + protected void assertFederatedUserLink(UserRepresentation user) { + Assert.assertTrue(StorageId.isLocalStorage(user.getId())); + Assert.assertNotNull(user.getFederationLink()); + Assert.assertEquals(user.getFederationLink(), ldapModelId); + } +} From bee4ca89897766c4b68856eafe14f1a3dad34251 Mon Sep 17 00:00:00 2001 From: Tomas Kyjovsky Date: Thu, 25 Jun 2020 11:31:05 +0200 Subject: [PATCH 13/30] KEYCLOAK-14872 CL DoS - read-timetout of the HTTP listener set to 30000 ms - read-timetout of the HTTPS listener set to 30000 ms - max-pool-size of the KeycloakDS datasource set to 100 connections --- .../content/bin/migrate-domain-clustered.cli | 20 +++++++++++++++++++ .../content/bin/migrate-domain-standalone.cli | 20 +++++++++++++++++++ .../content/bin/migrate-standalone-ha.cli | 20 +++++++++++++++++++ .../content/bin/migrate-standalone.cli | 20 +++++++++++++++++++ .../keycloak-datasources.xml | 3 +++ .../subsystem-templates/keycloak-undertow.xml | 4 ++-- 6 files changed, 85 insertions(+), 2 deletions(-) diff --git a/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-domain-clustered.cli b/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-domain-clustered.cli index e5c4f2b8df48..6765dfa987ab 100644 --- a/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-domain-clustered.cli +++ b/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-domain-clustered.cli @@ -695,6 +695,26 @@ if (result != fixed) of /profile=$clusteredProfile/subsystem=keycloak-server/spi end-try end-if +# Migrate from 8.0.0 to 9.0.5 + +if (result == 120000 || result == undefined) of /profile=$clusteredProfile/subsystem=undertow/server=default-server/http-listener=default/:read-attribute(name=read-timeout) + echo Updating value of http listener read-timeout. + /profile=$clusteredProfile/subsystem=undertow/server=default-server/http-listener=default/:write-attribute(name=read-timeout,value=30000) + echo +end-if + +if (result == 120000 || result == undefined) of /profile=$clusteredProfile/subsystem=undertow/server=default-server/https-listener=https/:read-attribute(name=read-timeout) + echo Updating value of https listener read-timeout. + /profile=$clusteredProfile/subsystem=undertow/server=default-server/https-listener=https/:write-attribute(name=read-timeout,value=30000) + echo +end-if + +if (result == 20 || result == undefined) of /profile=$clusteredProfile/subsystem=datasources/data-source=KeycloakDS/:read-attribute(name=max-pool-size) + echo Updating value of datasource max-pool-size. + /profile=$clusteredProfile/subsystem=datasources/data-source=KeycloakDS/:write-attribute(name=max-pool-size,value=100) + echo +end-if + # Migrate from 10.0.2 to 11.0.0 (migration changes for infinispan update from 9.4.18.Final to 10.1.8.Final) if (result != org.keycloak.keycloak-model-infinispan) of /profile=$clusteredProfile/subsystem=infinispan/cache-container=keycloak:read-attribute(name=module) diff --git a/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-domain-standalone.cli b/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-domain-standalone.cli index 652bbb81804c..f5287998203a 100644 --- a/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-domain-standalone.cli +++ b/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-domain-standalone.cli @@ -596,6 +596,26 @@ if (result != fixed) of /profile=$standaloneProfile/subsystem=keycloak-server/sp end-try end-if +# Migrate from 8.0.0 to 9.0.5 + +if (result == 120000 || result == undefined) of /profile=$standaloneProfile/subsystem=undertow/server=default-server/http-listener=default/:read-attribute(name=read-timeout) + echo Updating value of http listener read-timeout. + /profile=$standaloneProfile/subsystem=undertow/server=default-server/http-listener=default/:write-attribute(name=read-timeout,value=30000) + echo +end-if + +if (result == 120000 || result == undefined) of /profile=$standaloneProfile/subsystem=undertow/server=default-server/https-listener=https/:read-attribute(name=read-timeout) + echo Updating value of https listener read-timeout. + /profile=$standaloneProfile/subsystem=undertow/server=default-server/https-listener=https/:write-attribute(name=read-timeout,value=30000) + echo +end-if + +if (result == 20 || result == undefined) of /profile=$standaloneProfile/subsystem=datasources/data-source=KeycloakDS/:read-attribute(name=max-pool-size) + echo Updating value of datasource max-pool-size. + /profile=$standaloneProfile/subsystem=datasources/data-source=KeycloakDS/:write-attribute(name=max-pool-size,value=100) + echo +end-if + # Migrate from 10.0.2 to 11.0.0 (migration changes for infinispan update from 9.4.18.Final to 10.1.8.Final) if (result != org.keycloak.keycloak-model-infinispan) of /profile=$standaloneProfile/subsystem=infinispan/cache-container=keycloak:read-attribute(name=module) diff --git a/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-standalone-ha.cli b/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-standalone-ha.cli index 92bcdb612d8a..8baf80bfa03c 100644 --- a/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-standalone-ha.cli +++ b/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-standalone-ha.cli @@ -774,6 +774,26 @@ if (result != fixed) of /subsystem=keycloak-server/spi=hostname/:read-attribute( end-try end-if +# Migrate from 8.0.0 to 9.0.5 + +if (result == 120000 || result == undefined) of /subsystem=undertow/server=default-server/http-listener=default/:read-attribute(name=read-timeout) + echo Updating value of http listener read-timeout. + /subsystem=undertow/server=default-server/http-listener=default/:write-attribute(name=read-timeout,value=30000) + echo +end-if + +if (result == 120000 || result == undefined) of /subsystem=undertow/server=default-server/https-listener=https/:read-attribute(name=read-timeout) + echo Updating value of https listener read-timeout. + /subsystem=undertow/server=default-server/https-listener=https/:write-attribute(name=read-timeout,value=30000) + echo +end-if + +if (result == 20 || result == undefined) of /subsystem=datasources/data-source=KeycloakDS/:read-attribute(name=max-pool-size) + echo Updating value of datasource max-pool-size. + /subsystem=datasources/data-source=KeycloakDS/:write-attribute(name=max-pool-size,value=100) + echo +end-if + # Migrate from 10.0.2 to 11.0.0 (migration changes for infinispan update from 9.4.18.Final to 10.1.8.Final) if (result != org.keycloak.keycloak-model-infinispan) of /subsystem=infinispan/cache-container=keycloak:read-attribute(name=module) diff --git a/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-standalone.cli b/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-standalone.cli index e82e198c4536..5ff3b048ab3c 100644 --- a/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-standalone.cli +++ b/distribution/feature-packs/server-feature-pack/src/main/resources/content/bin/migrate-standalone.cli @@ -639,6 +639,26 @@ if (result != fixed) of /subsystem=keycloak-server/spi=hostname/:read-attribute( end-try end-if +# Migrate from 8.0.0 to 9.0.5 + +if (result == 120000 || result == undefined) of /subsystem=undertow/server=default-server/http-listener=default/:read-attribute(name=read-timeout) + echo Updating value of http listener read-timeout. + /subsystem=undertow/server=default-server/http-listener=default/:write-attribute(name=read-timeout,value=30000) + echo +end-if + +if (result == 120000 || result == undefined) of /subsystem=undertow/server=default-server/https-listener=https/:read-attribute(name=read-timeout) + echo Updating value of https listener read-timeout. + /subsystem=undertow/server=default-server/https-listener=https/:write-attribute(name=read-timeout,value=30000) + echo +end-if + +if (result == 20 || result == undefined) of /subsystem=datasources/data-source=KeycloakDS/:read-attribute(name=max-pool-size) + echo Updating value of datasource max-pool-size. + /subsystem=datasources/data-source=KeycloakDS/:write-attribute(name=max-pool-size,value=100) + echo +end-if + # Migrate from 10.0.2 to 11.0.0 (migration changes for infinispan update from 9.4.18.Final to 10.1.8.Final) if (result != org.keycloak.keycloak-model-infinispan) of /subsystem=infinispan/cache-container=keycloak:read-attribute(name=module) diff --git a/wildfly/server-subsystem/src/main/resources/subsystem-templates/keycloak-datasources.xml b/wildfly/server-subsystem/src/main/resources/subsystem-templates/keycloak-datasources.xml index 5fb32ea190aa..f7b199c983d7 100755 --- a/wildfly/server-subsystem/src/main/resources/subsystem-templates/keycloak-datasources.xml +++ b/wildfly/server-subsystem/src/main/resources/subsystem-templates/keycloak-datasources.xml @@ -36,6 +36,9 @@ sa sa + + 100 + diff --git a/wildfly/server-subsystem/src/main/resources/subsystem-templates/keycloak-undertow.xml b/wildfly/server-subsystem/src/main/resources/subsystem-templates/keycloak-undertow.xml index faebb13f4ee6..4ef3bcc67755 100644 --- a/wildfly/server-subsystem/src/main/resources/subsystem-templates/keycloak-undertow.xml +++ b/wildfly/server-subsystem/src/main/resources/subsystem-templates/keycloak-undertow.xml @@ -28,8 +28,8 @@ - - + + From 68e2ac3692435879ccacfab02ccca6e8c83b2a75 Mon Sep 17 00:00:00 2001 From: keycloak-bot Date: Fri, 21 Aug 2020 07:08:01 +0000 Subject: [PATCH 14/30] Set version to 11.0.1 --- adapters/oidc/adapter-core/pom.xml | 2 +- adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml | 2 +- adapters/oidc/as7-eap6/as7-adapter/pom.xml | 2 +- adapters/oidc/as7-eap6/as7-subsystem/pom.xml | 2 +- adapters/oidc/as7-eap6/pom.xml | 2 +- adapters/oidc/fuse7/camel-undertow/pom.xml | 2 +- adapters/oidc/fuse7/jetty94/pom.xml | 2 +- adapters/oidc/fuse7/pom.xml | 2 +- adapters/oidc/fuse7/tomcat8/pom.xml | 2 +- adapters/oidc/fuse7/undertow/pom.xml | 2 +- adapters/oidc/installed/pom.xml | 2 +- adapters/oidc/jaxrs-oauth-client/pom.xml | 2 +- adapters/oidc/jetty/jetty-core/pom.xml | 2 +- adapters/oidc/jetty/jetty9.2/pom.xml | 2 +- adapters/oidc/jetty/jetty9.3/pom.xml | 2 +- adapters/oidc/jetty/jetty9.4/pom.xml | 2 +- adapters/oidc/jetty/pom.xml | 2 +- adapters/oidc/js/pom.xml | 2 +- adapters/oidc/kcinit/pom.xml | 2 +- adapters/oidc/osgi-adapter/pom.xml | 2 +- adapters/oidc/pom.xml | 2 +- adapters/oidc/servlet-filter/pom.xml | 2 +- adapters/oidc/spring-boot-adapter-core/pom.xml | 2 +- adapters/oidc/spring-boot-container-bundle/pom.xml | 2 +- adapters/oidc/spring-boot-legacy-container-bundle/pom.xml | 2 +- adapters/oidc/spring-boot/pom.xml | 2 +- adapters/oidc/spring-boot2/pom.xml | 2 +- adapters/oidc/spring-security/pom.xml | 2 +- adapters/oidc/tomcat/pom.xml | 2 +- adapters/oidc/tomcat/tomcat-core/pom.xml | 2 +- adapters/oidc/tomcat/tomcat/pom.xml | 2 +- adapters/oidc/tomcat/tomcat7/pom.xml | 2 +- adapters/oidc/undertow/pom.xml | 2 +- adapters/oidc/wildfly-elytron/pom.xml | 2 +- adapters/oidc/wildfly/pom.xml | 2 +- adapters/oidc/wildfly/wildfly-adapter/pom.xml | 2 +- adapters/oidc/wildfly/wildfly-subsystem/pom.xml | 2 +- adapters/pom.xml | 2 +- adapters/saml/as7-eap6/adapter/pom.xml | 2 +- adapters/saml/as7-eap6/pom.xml | 2 +- adapters/saml/as7-eap6/subsystem/pom.xml | 2 +- adapters/saml/core-public/pom.xml | 2 +- adapters/saml/core/pom.xml | 2 +- adapters/saml/jetty/jetty-core/pom.xml | 2 +- adapters/saml/jetty/jetty9.2/pom.xml | 2 +- adapters/saml/jetty/jetty9.3/pom.xml | 2 +- adapters/saml/jetty/jetty9.4/pom.xml | 2 +- adapters/saml/jetty/pom.xml | 2 +- adapters/saml/pom.xml | 2 +- adapters/saml/servlet-filter/pom.xml | 2 +- adapters/saml/tomcat/pom.xml | 2 +- adapters/saml/tomcat/tomcat-core/pom.xml | 2 +- adapters/saml/tomcat/tomcat/pom.xml | 2 +- adapters/saml/tomcat/tomcat7/pom.xml | 2 +- adapters/saml/undertow/pom.xml | 2 +- adapters/saml/wildfly-elytron/pom.xml | 2 +- adapters/saml/wildfly/pom.xml | 2 +- adapters/saml/wildfly/wildfly-adapter/pom.xml | 2 +- adapters/saml/wildfly/wildfly-subsystem/pom.xml | 2 +- adapters/spi/adapter-spi/pom.xml | 2 +- adapters/spi/jboss-adapter-core/pom.xml | 2 +- adapters/spi/jetty-adapter-spi/pom.xml | 2 +- adapters/spi/pom.xml | 2 +- adapters/spi/servlet-adapter-spi/pom.xml | 2 +- adapters/spi/tomcat-adapter-spi/pom.xml | 2 +- adapters/spi/undertow-adapter-spi/pom.xml | 2 +- authz/client/pom.xml | 2 +- authz/policy/common/pom.xml | 2 +- authz/policy/pom.xml | 2 +- authz/pom.xml | 2 +- boms/adapter/pom.xml | 2 +- boms/misc/pom.xml | 2 +- boms/pom.xml | 2 +- boms/spi/pom.xml | 2 +- common/pom.xml | 2 +- core/pom.xml | 2 +- dependencies/pom.xml | 2 +- dependencies/server-all/pom.xml | 2 +- dependencies/server-min/pom.xml | 2 +- .../adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml | 2 +- distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml | 2 +- .../adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml | 2 +- distribution/adapters/as7-eap6-adapter/pom.xml | 2 +- distribution/adapters/fuse-adapter-zip/pom.xml | 2 +- distribution/adapters/jetty92-adapter-zip/pom.xml | 2 +- distribution/adapters/jetty93-adapter-zip/pom.xml | 2 +- distribution/adapters/jetty94-adapter-zip/pom.xml | 2 +- distribution/adapters/js-adapter-npm-zip/pom.xml | 2 +- distribution/adapters/js-adapter-zip/pom.xml | 2 +- distribution/adapters/osgi/features/pom.xml | 2 +- distribution/adapters/osgi/jaas/pom.xml | 2 +- distribution/adapters/osgi/pom.xml | 2 +- distribution/adapters/pom.xml | 2 +- distribution/adapters/tomcat-adapter-zip/pom.xml | 2 +- distribution/adapters/tomcat7-adapter-zip/pom.xml | 2 +- distribution/adapters/wildfly-adapter/pom.xml | 2 +- distribution/api-docs-dist/pom.xml | 2 +- distribution/downloads/pom.xml | 2 +- distribution/examples-dist/pom.xml | 2 +- distribution/feature-packs/adapter-feature-pack/pom.xml | 2 +- distribution/feature-packs/pom.xml | 2 +- distribution/feature-packs/server-feature-pack/pom.xml | 2 +- distribution/licenses-common/pom.xml | 2 +- distribution/maven-plugins/licenses-processor/pom.xml | 2 +- distribution/maven-plugins/pom.xml | 2 +- distribution/pom.xml | 2 +- .../saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml | 2 +- .../saml-adapters/as7-eap6-adapter/as7-modules/pom.xml | 2 +- .../saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/as7-eap6-adapter/pom.xml | 2 +- distribution/saml-adapters/jetty92-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/jetty93-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/jetty94-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/pom.xml | 2 +- distribution/saml-adapters/tomcat-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/tomcat7-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/wildfly-adapter/pom.xml | 2 +- .../saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml | 2 +- .../saml-adapters/wildfly-adapter/wildfly-modules/pom.xml | 2 +- distribution/server-dist/pom.xml | 2 +- distribution/server-overlay/pom.xml | 2 +- distribution/server-x/pom.xml | 2 +- examples/admin-client/pom.xml | 2 +- examples/basic-auth/pom.xml | 2 +- examples/broker/facebook-authentication/pom.xml | 2 +- examples/broker/google-authentication/pom.xml | 2 +- examples/broker/pom.xml | 2 +- examples/broker/saml-broker-authentication/pom.xml | 2 +- examples/broker/twitter-authentication/pom.xml | 2 +- examples/cors/angular-product-app/pom.xml | 2 +- examples/cors/database-service/pom.xml | 2 +- examples/cors/pom.xml | 2 +- examples/demo-template/admin-access-app/pom.xml | 2 +- examples/demo-template/angular-product-app/pom.xml | 2 +- examples/demo-template/customer-app-cli/pom.xml | 2 +- examples/demo-template/customer-app-filter/pom.xml | 2 +- examples/demo-template/customer-app-js/pom.xml | 2 +- examples/demo-template/customer-app/pom.xml | 2 +- examples/demo-template/database-service/pom.xml | 2 +- examples/demo-template/example-ear/pom.xml | 2 +- examples/demo-template/offline-access-app/pom.xml | 2 +- examples/demo-template/pom.xml | 2 +- examples/demo-template/product-app/pom.xml | 2 +- examples/demo-template/service-account/pom.xml | 2 +- examples/js-console/pom.xml | 2 +- examples/kerberos/pom.xml | 2 +- examples/ldap/pom.xml | 2 +- examples/multi-tenant/pom.xml | 2 +- examples/pom.xml | 2 +- examples/providers/authenticator/pom.xml | 2 +- examples/providers/domain-extension/pom.xml | 2 +- examples/providers/pom.xml | 2 +- examples/providers/rest/pom.xml | 2 +- examples/saml/pom.xml | 2 +- examples/saml/post-with-encryption/pom.xml | 2 +- examples/saml/post-with-signature/pom.xml | 2 +- examples/saml/redirect-with-signature/pom.xml | 2 +- examples/saml/servlet-filter/pom.xml | 2 +- examples/themes/pom.xml | 2 +- federation/kerberos/pom.xml | 2 +- federation/ldap/pom.xml | 2 +- federation/pom.xml | 2 +- federation/sssd/pom.xml | 2 +- integration/admin-client/pom.xml | 2 +- integration/client-cli/admin-cli/pom.xml | 2 +- integration/client-cli/client-cli-dist/pom.xml | 2 +- integration/client-cli/client-registration-cli/pom.xml | 2 +- integration/client-cli/pom.xml | 2 +- integration/client-registration/pom.xml | 2 +- integration/pom.xml | 2 +- misc/keycloak-test-helper/pom.xml | 2 +- misc/pom.xml | 2 +- misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml | 2 +- misc/spring-boot-starter/pom.xml | 2 +- .../keycloak-legacy-spring-boot-starter/pom.xml | 2 +- misc/spring-legacy-boot-starter/pom.xml | 2 +- model/infinispan/pom.xml | 2 +- model/jpa/pom.xml | 2 +- model/map/pom.xml | 2 +- model/pom.xml | 2 +- pom.xml | 2 +- quarkus/deployment/pom.xml | 2 +- quarkus/pom.xml | 2 +- quarkus/runtime/pom.xml | 2 +- quarkus/server/pom.xml | 2 +- release-details | 4 ++-- saml-core-api/pom.xml | 2 +- saml-core/pom.xml | 2 +- server-spi-private/pom.xml | 2 +- server-spi/pom.xml | 2 +- services/pom.xml | 2 +- testsuite/db-allocator-plugin/pom.xml | 2 +- testsuite/integration-arquillian/pom.xml | 2 +- .../servers/app-server/app-server-spi/pom.xml | 2 +- .../servers/app-server/jboss/eap/pom.xml | 2 +- .../servers/app-server/jboss/eap6/pom.xml | 2 +- .../integration-arquillian/servers/app-server/jboss/pom.xml | 2 +- .../servers/app-server/jboss/relative/eap/pom.xml | 2 +- .../servers/app-server/jboss/relative/pom.xml | 2 +- .../servers/app-server/jboss/relative/wildfly/pom.xml | 2 +- .../servers/app-server/jboss/wildfly-deprecated/pom.xml | 2 +- .../servers/app-server/jboss/wildfly/pom.xml | 2 +- .../servers/app-server/jetty/92/pom.xml | 2 +- .../servers/app-server/jetty/93/pom.xml | 2 +- .../servers/app-server/jetty/94/pom.xml | 2 +- .../servers/app-server/jetty/common/pom.xml | 2 +- .../integration-arquillian/servers/app-server/jetty/pom.xml | 2 +- .../servers/app-server/karaf/fuse63/pom.xml | 2 +- .../servers/app-server/karaf/fuse7x/pom.xml | 2 +- .../integration-arquillian/servers/app-server/karaf/pom.xml | 2 +- testsuite/integration-arquillian/servers/app-server/pom.xml | 2 +- .../servers/app-server/tomcat/common/pom.xml | 2 +- .../integration-arquillian/servers/app-server/tomcat/pom.xml | 2 +- .../servers/app-server/tomcat/tomcat7/pom.xml | 2 +- .../servers/app-server/tomcat/tomcat8/pom.xml | 2 +- .../servers/app-server/tomcat/tomcat9/pom.xml | 2 +- .../servers/app-server/undertow/pom.xml | 2 +- .../servers/auth-server/jboss/eap/pom.xml | 2 +- .../servers/auth-server/jboss/legacy/pom.xml | 2 +- .../integration-arquillian/servers/auth-server/jboss/pom.xml | 2 +- .../servers/auth-server/jboss/wildfly/pom.xml | 2 +- testsuite/integration-arquillian/servers/auth-server/pom.xml | 2 +- .../servers/auth-server/quarkus/pom.xml | 2 +- .../servers/auth-server/services/pom.xml | 2 +- .../servers/auth-server/services/testsuite-providers/pom.xml | 2 +- .../servers/auth-server/undertow/pom.xml | 2 +- .../servers/cache-server/jboss/infinispan/pom.xml | 2 +- .../servers/cache-server/jboss/jdg/pom.xml | 2 +- .../integration-arquillian/servers/cache-server/jboss/pom.xml | 2 +- testsuite/integration-arquillian/servers/cache-server/pom.xml | 2 +- testsuite/integration-arquillian/servers/migration/pom.xml | 2 +- testsuite/integration-arquillian/servers/pom.xml | 2 +- .../integration-arquillian/test-apps/app-profile-jee/pom.xml | 2 +- .../test-apps/cors/angular-product/pom.xml | 2 +- .../test-apps/cors/database-service/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/cors/pom.xml | 2 +- .../test-apps/fuse/camel-fuse7-undertow/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml | 2 +- .../test-apps/fuse/customer-app-fuse/pom.xml | 2 +- .../test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml | 2 +- .../integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml | 2 +- .../test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml | 2 +- .../integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml | 2 +- .../test-apps/fuse/external-config/pom.xml | 2 +- .../integration-arquillian/test-apps/fuse/features/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/fuse/pom.xml | 2 +- .../test-apps/fuse/product-app-fuse/pom.xml | 2 +- .../test-apps/fuse/product-app-fuse7-undertow/pom.xml | 2 +- .../test-apps/hello-world-authz-service/pom.xml | 2 +- .../test-apps/photoz/photoz-html5-client/pom.xml | 2 +- .../test-apps/photoz/photoz-restful-api/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/photoz/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/pom.xml | 2 +- .../integration-arquillian/test-apps/servlet-authz/pom.xml | 2 +- .../test-apps/servlet-policy-enforcer/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/servlets/pom.xml | 2 +- .../test-apps/spring-boot-adapter-app/pom.xml | 2 +- .../integration-arquillian/test-apps/test-apps-dist/pom.xml | 2 +- testsuite/integration-arquillian/tests/base/pom.xml | 2 +- .../integration-arquillian/tests/other/adapters/jboss/pom.xml | 2 +- .../tests/other/adapters/jboss/relative/eap/pom.xml | 2 +- .../tests/other/adapters/jboss/relative/pom.xml | 2 +- .../tests/other/adapters/jboss/relative/wildfly/pom.xml | 2 +- .../tests/other/adapters/jboss/remote/pom.xml | 2 +- .../tests/other/adapters/karaf/fuse61/pom.xml | 2 +- .../tests/other/adapters/karaf/fuse62/pom.xml | 2 +- .../tests/other/adapters/karaf/karaf3/pom.xml | 2 +- .../integration-arquillian/tests/other/adapters/karaf/pom.xml | 2 +- testsuite/integration-arquillian/tests/other/adapters/pom.xml | 2 +- .../integration-arquillian/tests/other/adapters/was/pom.xml | 2 +- .../tests/other/adapters/was/was8/pom.xml | 2 +- .../integration-arquillian/tests/other/adapters/wls/pom.xml | 2 +- .../tests/other/adapters/wls/wls12/pom.xml | 2 +- testsuite/integration-arquillian/tests/other/base-ui/pom.xml | 2 +- .../integration-arquillian/tests/other/clean-start/pom.xml | 2 +- testsuite/integration-arquillian/tests/other/console/pom.xml | 2 +- .../tests/other/jpa-performance/pom.xml | 2 +- .../tests/other/mod_auth_mellon/pom.xml | 2 +- testsuite/integration-arquillian/tests/other/pom.xml | 2 +- .../tests/other/server-config-migration/pom.xml | 2 +- .../tests/other/springboot-tests/pom.xml | 2 +- testsuite/integration-arquillian/tests/other/sssd/pom.xml | 2 +- testsuite/integration-arquillian/tests/pom.xml | 2 +- testsuite/integration-arquillian/util/pom.xml | 2 +- testsuite/performance/infinispan/pom.xml | 2 +- testsuite/performance/keycloak/pom.xml | 2 +- .../performance/load-balancer/wildfly-modcluster/pom.xml | 2 +- testsuite/performance/pom.xml | 2 +- testsuite/performance/tests/pom.xml | 2 +- testsuite/pom.xml | 2 +- testsuite/utils/pom.xml | 2 +- themes/pom.xml | 2 +- util/embedded-ldap/pom.xml | 2 +- util/pom.xml | 2 +- wildfly/adduser/pom.xml | 2 +- wildfly/extensions/pom.xml | 2 +- wildfly/pom.xml | 2 +- wildfly/server-subsystem/pom.xml | 2 +- 298 files changed, 299 insertions(+), 299 deletions(-) diff --git a/adapters/oidc/adapter-core/pom.xml b/adapters/oidc/adapter-core/pom.xml index e12ad7e91f07..843622c0665a 100755 --- a/adapters/oidc/adapter-core/pom.xml +++ b/adapters/oidc/adapter-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml b/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml index 29ebdca13e24..25eb3ee6e0b3 100755 --- a/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml +++ b/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-as7-integration-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/adapters/oidc/as7-eap6/as7-adapter/pom.xml b/adapters/oidc/as7-eap6/as7-adapter/pom.xml index 99f06dbd307a..0d4883cb365a 100755 --- a/adapters/oidc/as7-eap6/as7-adapter/pom.xml +++ b/adapters/oidc/as7-eap6/as7-adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-as7-integration-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/adapters/oidc/as7-eap6/as7-subsystem/pom.xml b/adapters/oidc/as7-eap6/as7-subsystem/pom.xml index 735f218b3d56..09924da6332f 100755 --- a/adapters/oidc/as7-eap6/as7-subsystem/pom.xml +++ b/adapters/oidc/as7-eap6/as7-subsystem/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-as7-integration-pom - 11.0.0 + 11.0.1 ../pom.xml diff --git a/adapters/oidc/as7-eap6/pom.xml b/adapters/oidc/as7-eap6/pom.xml index 9224b900f788..064df10fa50d 100755 --- a/adapters/oidc/as7-eap6/pom.xml +++ b/adapters/oidc/as7-eap6/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml Keycloak AS7 / JBoss EAP 6 Integration diff --git a/adapters/oidc/fuse7/camel-undertow/pom.xml b/adapters/oidc/fuse7/camel-undertow/pom.xml index 92f1fb10586f..8414053fbcfb 100644 --- a/adapters/oidc/fuse7/camel-undertow/pom.xml +++ b/adapters/oidc/fuse7/camel-undertow/pom.xml @@ -21,7 +21,7 @@ keycloak-fuse7-integration-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/adapters/oidc/fuse7/jetty94/pom.xml b/adapters/oidc/fuse7/jetty94/pom.xml index 32652faa136a..5857cb69e4e3 100644 --- a/adapters/oidc/fuse7/jetty94/pom.xml +++ b/adapters/oidc/fuse7/jetty94/pom.xml @@ -21,7 +21,7 @@ keycloak-fuse7-integration-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/adapters/oidc/fuse7/pom.xml b/adapters/oidc/fuse7/pom.xml index 860cbad99760..6129f93b3d78 100644 --- a/adapters/oidc/fuse7/pom.xml +++ b/adapters/oidc/fuse7/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/fuse7/tomcat8/pom.xml b/adapters/oidc/fuse7/tomcat8/pom.xml index 03aafcfd9a34..32b739ae016f 100644 --- a/adapters/oidc/fuse7/tomcat8/pom.xml +++ b/adapters/oidc/fuse7/tomcat8/pom.xml @@ -21,7 +21,7 @@ keycloak-fuse7-integration-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/adapters/oidc/fuse7/undertow/pom.xml b/adapters/oidc/fuse7/undertow/pom.xml index cd5aec814bdc..516d6c6401f8 100644 --- a/adapters/oidc/fuse7/undertow/pom.xml +++ b/adapters/oidc/fuse7/undertow/pom.xml @@ -21,7 +21,7 @@ keycloak-fuse7-integration-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/adapters/oidc/installed/pom.xml b/adapters/oidc/installed/pom.xml index fb6f8b4cdea2..ab5bcb0b1d44 100755 --- a/adapters/oidc/installed/pom.xml +++ b/adapters/oidc/installed/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jaxrs-oauth-client/pom.xml b/adapters/oidc/jaxrs-oauth-client/pom.xml index 5ca8762a9eff..11a0ab1361e4 100755 --- a/adapters/oidc/jaxrs-oauth-client/pom.xml +++ b/adapters/oidc/jaxrs-oauth-client/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jetty/jetty-core/pom.xml b/adapters/oidc/jetty/jetty-core/pom.xml index 049d50c40d20..c66dba0c9059 100755 --- a/adapters/oidc/jetty/jetty-core/pom.xml +++ b/adapters/oidc/jetty/jetty-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jetty/jetty9.2/pom.xml b/adapters/oidc/jetty/jetty9.2/pom.xml index ecc54b85bcc5..090d417d9643 100755 --- a/adapters/oidc/jetty/jetty9.2/pom.xml +++ b/adapters/oidc/jetty/jetty9.2/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jetty/jetty9.3/pom.xml b/adapters/oidc/jetty/jetty9.3/pom.xml index 3886d941208f..493d55ade8b6 100644 --- a/adapters/oidc/jetty/jetty9.3/pom.xml +++ b/adapters/oidc/jetty/jetty9.3/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jetty/jetty9.4/pom.xml b/adapters/oidc/jetty/jetty9.4/pom.xml index 93eee9a489db..1c6135434a41 100644 --- a/adapters/oidc/jetty/jetty9.4/pom.xml +++ b/adapters/oidc/jetty/jetty9.4/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jetty/pom.xml b/adapters/oidc/jetty/pom.xml index 76d68e50cd90..28c6b1275bab 100755 --- a/adapters/oidc/jetty/pom.xml +++ b/adapters/oidc/jetty/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml Keycloak Jetty Integration diff --git a/adapters/oidc/js/pom.xml b/adapters/oidc/js/pom.xml index 7a99ac84e74d..786ceacb32dc 100755 --- a/adapters/oidc/js/pom.xml +++ b/adapters/oidc/js/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/kcinit/pom.xml b/adapters/oidc/kcinit/pom.xml index a26c19b91ec3..1264475e807a 100755 --- a/adapters/oidc/kcinit/pom.xml +++ b/adapters/oidc/kcinit/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/osgi-adapter/pom.xml b/adapters/oidc/osgi-adapter/pom.xml index f3847dc33165..879204b08ef5 100755 --- a/adapters/oidc/osgi-adapter/pom.xml +++ b/adapters/oidc/osgi-adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/pom.xml b/adapters/oidc/pom.xml index 4df76bc95100..80e2490b9bf9 100755 --- a/adapters/oidc/pom.xml +++ b/adapters/oidc/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../pom.xml Keycloak OIDC Client Adapter Modules diff --git a/adapters/oidc/servlet-filter/pom.xml b/adapters/oidc/servlet-filter/pom.xml index 23a3a46f88b8..a5f4c5ed34ad 100755 --- a/adapters/oidc/servlet-filter/pom.xml +++ b/adapters/oidc/servlet-filter/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/spring-boot-adapter-core/pom.xml b/adapters/oidc/spring-boot-adapter-core/pom.xml index 0e8075e370c4..461f8dad6a0e 100755 --- a/adapters/oidc/spring-boot-adapter-core/pom.xml +++ b/adapters/oidc/spring-boot-adapter-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/spring-boot-container-bundle/pom.xml b/adapters/oidc/spring-boot-container-bundle/pom.xml index 7797b16fd8e1..0cf4382c6758 100644 --- a/adapters/oidc/spring-boot-container-bundle/pom.xml +++ b/adapters/oidc/spring-boot-container-bundle/pom.xml @@ -4,7 +4,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml spring-boot-container-bundle diff --git a/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml b/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml index 280521d4f0f8..6b83c35531ab 100644 --- a/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml +++ b/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml @@ -4,7 +4,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml spring-boot-legacy-container-bundle diff --git a/adapters/oidc/spring-boot/pom.xml b/adapters/oidc/spring-boot/pom.xml index 493e11962ecb..a111b599f05c 100755 --- a/adapters/oidc/spring-boot/pom.xml +++ b/adapters/oidc/spring-boot/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/spring-boot2/pom.xml b/adapters/oidc/spring-boot2/pom.xml index 580d88f4bd06..3890ae4b93c0 100755 --- a/adapters/oidc/spring-boot2/pom.xml +++ b/adapters/oidc/spring-boot2/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/spring-security/pom.xml b/adapters/oidc/spring-security/pom.xml index 7c2db21d48c8..c22a454bcea7 100755 --- a/adapters/oidc/spring-security/pom.xml +++ b/adapters/oidc/spring-security/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/tomcat/pom.xml b/adapters/oidc/tomcat/pom.xml index 0e4623d4231b..493d1837afed 100755 --- a/adapters/oidc/tomcat/pom.xml +++ b/adapters/oidc/tomcat/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml Keycloak Tomcat Integration diff --git a/adapters/oidc/tomcat/tomcat-core/pom.xml b/adapters/oidc/tomcat/tomcat-core/pom.xml index 480341205053..6d6bac53ae70 100755 --- a/adapters/oidc/tomcat/tomcat-core/pom.xml +++ b/adapters/oidc/tomcat/tomcat-core/pom.xml @@ -21,7 +21,7 @@ keycloak-tomcat-integration-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/adapters/oidc/tomcat/tomcat/pom.xml b/adapters/oidc/tomcat/tomcat/pom.xml index 61e3fb1f9ec0..bec8dbb96f7d 100755 --- a/adapters/oidc/tomcat/tomcat/pom.xml +++ b/adapters/oidc/tomcat/tomcat/pom.xml @@ -21,7 +21,7 @@ keycloak-tomcat-integration-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/adapters/oidc/tomcat/tomcat7/pom.xml b/adapters/oidc/tomcat/tomcat7/pom.xml index 09875b6fc51c..f6bc7885bfb8 100755 --- a/adapters/oidc/tomcat/tomcat7/pom.xml +++ b/adapters/oidc/tomcat/tomcat7/pom.xml @@ -21,7 +21,7 @@ keycloak-tomcat-integration-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/adapters/oidc/undertow/pom.xml b/adapters/oidc/undertow/pom.xml index b17fe1cb089b..7f1845fa2164 100755 --- a/adapters/oidc/undertow/pom.xml +++ b/adapters/oidc/undertow/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/wildfly-elytron/pom.xml b/adapters/oidc/wildfly-elytron/pom.xml index b606615a1689..762bb2d17fca 100755 --- a/adapters/oidc/wildfly-elytron/pom.xml +++ b/adapters/oidc/wildfly-elytron/pom.xml @@ -22,7 +22,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/wildfly/pom.xml b/adapters/oidc/wildfly/pom.xml index c15c4b680eb3..3ae359b2c1fe 100755 --- a/adapters/oidc/wildfly/pom.xml +++ b/adapters/oidc/wildfly/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml Keycloak WildFly Integration diff --git a/adapters/oidc/wildfly/wildfly-adapter/pom.xml b/adapters/oidc/wildfly/wildfly-adapter/pom.xml index 268cc373c7a0..1c3f485b0ae9 100644 --- a/adapters/oidc/wildfly/wildfly-adapter/pom.xml +++ b/adapters/oidc/wildfly/wildfly-adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml 4.0.0 diff --git a/adapters/oidc/wildfly/wildfly-subsystem/pom.xml b/adapters/oidc/wildfly/wildfly-subsystem/pom.xml index 13945cbd301e..aaf79f1d5238 100755 --- a/adapters/oidc/wildfly/wildfly-subsystem/pom.xml +++ b/adapters/oidc/wildfly/wildfly-subsystem/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-parent - 11.0.0 + 11.0.1 ../../../../pom.xml diff --git a/adapters/pom.xml b/adapters/pom.xml index a9e1a83d9590..2e25bae53245 100755 --- a/adapters/pom.xml +++ b/adapters/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml Keycloak Adapters diff --git a/adapters/saml/as7-eap6/adapter/pom.xml b/adapters/saml/as7-eap6/adapter/pom.xml index 1fb611e2357d..2973173cd62a 100755 --- a/adapters/saml/as7-eap6/adapter/pom.xml +++ b/adapters/saml/as7-eap6/adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-saml-eap-integration-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/adapters/saml/as7-eap6/pom.xml b/adapters/saml/as7-eap6/pom.xml index 6c8cf4049922..626b7a4fa2da 100755 --- a/adapters/saml/as7-eap6/pom.xml +++ b/adapters/saml/as7-eap6/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml Keycloak SAML EAP Integration diff --git a/adapters/saml/as7-eap6/subsystem/pom.xml b/adapters/saml/as7-eap6/subsystem/pom.xml index ee178f58e7f7..bfda340ae023 100755 --- a/adapters/saml/as7-eap6/subsystem/pom.xml +++ b/adapters/saml/as7-eap6/subsystem/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-saml-eap-integration-pom - 11.0.0 + 11.0.1 ../pom.xml diff --git a/adapters/saml/core-public/pom.xml b/adapters/saml/core-public/pom.xml index 8bd41480613b..b4debde70798 100755 --- a/adapters/saml/core-public/pom.xml +++ b/adapters/saml/core-public/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/saml/core/pom.xml b/adapters/saml/core/pom.xml index 5548f3c31f16..bb6b313b08f8 100755 --- a/adapters/saml/core/pom.xml +++ b/adapters/saml/core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/saml/jetty/jetty-core/pom.xml b/adapters/saml/jetty/jetty-core/pom.xml index 948385294238..97f5279383b2 100755 --- a/adapters/saml/jetty/jetty-core/pom.xml +++ b/adapters/saml/jetty/jetty-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml 4.0.0 diff --git a/adapters/saml/jetty/jetty9.2/pom.xml b/adapters/saml/jetty/jetty9.2/pom.xml index 94172666724b..bdf4cb51c39e 100755 --- a/adapters/saml/jetty/jetty9.2/pom.xml +++ b/adapters/saml/jetty/jetty9.2/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml 4.0.0 diff --git a/adapters/saml/jetty/jetty9.3/pom.xml b/adapters/saml/jetty/jetty9.3/pom.xml index 6c7d21e95c4d..70a83eb90069 100644 --- a/adapters/saml/jetty/jetty9.3/pom.xml +++ b/adapters/saml/jetty/jetty9.3/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml 4.0.0 diff --git a/adapters/saml/jetty/jetty9.4/pom.xml b/adapters/saml/jetty/jetty9.4/pom.xml index e06e1acce90b..e1733f22aa2a 100644 --- a/adapters/saml/jetty/jetty9.4/pom.xml +++ b/adapters/saml/jetty/jetty9.4/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml 4.0.0 diff --git a/adapters/saml/jetty/pom.xml b/adapters/saml/jetty/pom.xml index 9ae87dbe10d8..57ea0176f5da 100755 --- a/adapters/saml/jetty/pom.xml +++ b/adapters/saml/jetty/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml Keycloak SAML Jetty Integration diff --git a/adapters/saml/pom.xml b/adapters/saml/pom.xml index 67a331609f72..445a53d55dfe 100755 --- a/adapters/saml/pom.xml +++ b/adapters/saml/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../pom.xml Keycloak SAML Client Adapter Modules diff --git a/adapters/saml/servlet-filter/pom.xml b/adapters/saml/servlet-filter/pom.xml index 89e5cab26cef..d7cdf93db36c 100755 --- a/adapters/saml/servlet-filter/pom.xml +++ b/adapters/saml/servlet-filter/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/saml/tomcat/pom.xml b/adapters/saml/tomcat/pom.xml index ff230da3059e..d27173e9f5a9 100755 --- a/adapters/saml/tomcat/pom.xml +++ b/adapters/saml/tomcat/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml Keycloak SAML Tomcat Integration diff --git a/adapters/saml/tomcat/tomcat-core/pom.xml b/adapters/saml/tomcat/tomcat-core/pom.xml index 759d1fccdc4e..5177f5e225c0 100755 --- a/adapters/saml/tomcat/tomcat-core/pom.xml +++ b/adapters/saml/tomcat/tomcat-core/pom.xml @@ -21,7 +21,7 @@ keycloak-saml-tomcat-integration-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/adapters/saml/tomcat/tomcat/pom.xml b/adapters/saml/tomcat/tomcat/pom.xml index ae742430d072..1fa0ef1bfcfd 100755 --- a/adapters/saml/tomcat/tomcat/pom.xml +++ b/adapters/saml/tomcat/tomcat/pom.xml @@ -21,7 +21,7 @@ keycloak-saml-tomcat-integration-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/adapters/saml/tomcat/tomcat7/pom.xml b/adapters/saml/tomcat/tomcat7/pom.xml index 986b1c3bca08..a17a57f97b9f 100755 --- a/adapters/saml/tomcat/tomcat7/pom.xml +++ b/adapters/saml/tomcat/tomcat7/pom.xml @@ -21,7 +21,7 @@ keycloak-saml-tomcat-integration-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/adapters/saml/undertow/pom.xml b/adapters/saml/undertow/pom.xml index 753463c0942a..efecf6dcf62f 100755 --- a/adapters/saml/undertow/pom.xml +++ b/adapters/saml/undertow/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/saml/wildfly-elytron/pom.xml b/adapters/saml/wildfly-elytron/pom.xml index f321cb5dc49c..0993311ef090 100755 --- a/adapters/saml/wildfly-elytron/pom.xml +++ b/adapters/saml/wildfly-elytron/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/saml/wildfly/pom.xml b/adapters/saml/wildfly/pom.xml index 29e15446bff3..6ff533f062f5 100755 --- a/adapters/saml/wildfly/pom.xml +++ b/adapters/saml/wildfly/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml Keycloak SAML Wildfly Integration diff --git a/adapters/saml/wildfly/wildfly-adapter/pom.xml b/adapters/saml/wildfly/wildfly-adapter/pom.xml index df81440c048f..c502ade24b14 100755 --- a/adapters/saml/wildfly/wildfly-adapter/pom.xml +++ b/adapters/saml/wildfly/wildfly-adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml 4.0.0 diff --git a/adapters/saml/wildfly/wildfly-subsystem/pom.xml b/adapters/saml/wildfly/wildfly-subsystem/pom.xml index 7731452607ce..68a9aa263044 100755 --- a/adapters/saml/wildfly/wildfly-subsystem/pom.xml +++ b/adapters/saml/wildfly/wildfly-subsystem/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-parent - 11.0.0 + 11.0.1 ../../../../pom.xml diff --git a/adapters/spi/adapter-spi/pom.xml b/adapters/spi/adapter-spi/pom.xml index 0a2c40637881..aa9aa7fffc99 100755 --- a/adapters/spi/adapter-spi/pom.xml +++ b/adapters/spi/adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/spi/jboss-adapter-core/pom.xml b/adapters/spi/jboss-adapter-core/pom.xml index 918f2d65f469..b1878b49a8ac 100755 --- a/adapters/spi/jboss-adapter-core/pom.xml +++ b/adapters/spi/jboss-adapter-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/spi/jetty-adapter-spi/pom.xml b/adapters/spi/jetty-adapter-spi/pom.xml index 57dabbb23bcd..4977ac00b17f 100755 --- a/adapters/spi/jetty-adapter-spi/pom.xml +++ b/adapters/spi/jetty-adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/spi/pom.xml b/adapters/spi/pom.xml index 163dd47b78f9..4ff779db57b3 100755 --- a/adapters/spi/pom.xml +++ b/adapters/spi/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../pom.xml Keycloak Client Adapter SPI Modules diff --git a/adapters/spi/servlet-adapter-spi/pom.xml b/adapters/spi/servlet-adapter-spi/pom.xml index 2a68ece635a9..5a0f5ccab81e 100755 --- a/adapters/spi/servlet-adapter-spi/pom.xml +++ b/adapters/spi/servlet-adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/spi/tomcat-adapter-spi/pom.xml b/adapters/spi/tomcat-adapter-spi/pom.xml index f50ca5fbd1b8..bd645bf8ea15 100755 --- a/adapters/spi/tomcat-adapter-spi/pom.xml +++ b/adapters/spi/tomcat-adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/adapters/spi/undertow-adapter-spi/pom.xml b/adapters/spi/undertow-adapter-spi/pom.xml index bae0b42518ce..7182d55dfe8e 100755 --- a/adapters/spi/undertow-adapter-spi/pom.xml +++ b/adapters/spi/undertow-adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml 4.0.0 diff --git a/authz/client/pom.xml b/authz/client/pom.xml index 0c4ceff4cf51..1b8bdbbdd90f 100644 --- a/authz/client/pom.xml +++ b/authz/client/pom.xml @@ -7,7 +7,7 @@ org.keycloak keycloak-authz-parent - 11.0.0 + 11.0.1 ../pom.xml diff --git a/authz/policy/common/pom.xml b/authz/policy/common/pom.xml index 299fffd9e878..8545556a54b7 100644 --- a/authz/policy/common/pom.xml +++ b/authz/policy/common/pom.xml @@ -25,7 +25,7 @@ org.keycloak keycloak-authz-provider-parent - 11.0.0 + 11.0.1 ../pom.xml diff --git a/authz/policy/pom.xml b/authz/policy/pom.xml index 66f268f43200..a615af817dee 100644 --- a/authz/policy/pom.xml +++ b/authz/policy/pom.xml @@ -7,7 +7,7 @@ org.keycloak keycloak-authz-parent - 11.0.0 + 11.0.1 ../pom.xml diff --git a/authz/pom.xml b/authz/pom.xml index 14fc05245fe5..96f8620b79fe 100644 --- a/authz/pom.xml +++ b/authz/pom.xml @@ -7,7 +7,7 @@ org.keycloak keycloak-parent - 11.0.0 + 11.0.1 ../pom.xml diff --git a/boms/adapter/pom.xml b/boms/adapter/pom.xml index 0a2f11ab96f7..9bdef512a969 100644 --- a/boms/adapter/pom.xml +++ b/boms/adapter/pom.xml @@ -22,7 +22,7 @@ org.keycloak.bom keycloak-bom-parent - 11.0.0 + 11.0.1 org.keycloak.bom diff --git a/boms/misc/pom.xml b/boms/misc/pom.xml index 81ecb5185171..59b7b338f8d5 100644 --- a/boms/misc/pom.xml +++ b/boms/misc/pom.xml @@ -22,7 +22,7 @@ org.keycloak.bom keycloak-bom-parent - 11.0.0 + 11.0.1 org.keycloak.bom diff --git a/boms/pom.xml b/boms/pom.xml index 0d2fa2a61ecb..8feb8583dec5 100644 --- a/boms/pom.xml +++ b/boms/pom.xml @@ -26,7 +26,7 @@ org.keycloak.bom keycloak-bom-parent - 11.0.0 + 11.0.1 pom diff --git a/boms/spi/pom.xml b/boms/spi/pom.xml index c092efa66e23..fe7016a88285 100644 --- a/boms/spi/pom.xml +++ b/boms/spi/pom.xml @@ -23,7 +23,7 @@ org.keycloak.bom keycloak-bom-parent - 11.0.0 + 11.0.1 org.keycloak.bom diff --git a/common/pom.xml b/common/pom.xml index 93f39640f8be..766c1c426807 100755 --- a/common/pom.xml +++ b/common/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/core/pom.xml b/core/pom.xml index 94c61edcf575..353b8b7bfefa 100755 --- a/core/pom.xml +++ b/core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/dependencies/pom.xml b/dependencies/pom.xml index b4fe44b6bd4c..4ca4faee3a2e 100755 --- a/dependencies/pom.xml +++ b/dependencies/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/dependencies/server-all/pom.xml b/dependencies/server-all/pom.xml index c7d559594a0f..0150944bdf52 100755 --- a/dependencies/server-all/pom.xml +++ b/dependencies/server-all/pom.xml @@ -21,7 +21,7 @@ keycloak-dependencies-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/dependencies/server-min/pom.xml b/dependencies/server-min/pom.xml index b0f729fff3a2..1c94faa21a4b 100755 --- a/dependencies/server-min/pom.xml +++ b/dependencies/server-min/pom.xml @@ -21,7 +21,7 @@ keycloak-dependencies-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml b/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml index 8d8465b95136..a67f426deafb 100755 --- a/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml +++ b/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml diff --git a/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml b/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml index 94f1cd5ac779..2860346dbe5d 100755 --- a/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml +++ b/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml @@ -25,7 +25,7 @@ keycloak-as7-eap6-adapter-dist-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml diff --git a/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml b/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml index 66ea05356e8e..723159c24c43 100755 --- a/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml +++ b/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-as7-eap6-adapter-dist-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml diff --git a/distribution/adapters/as7-eap6-adapter/pom.xml b/distribution/adapters/as7-eap6-adapter/pom.xml index da16d4391fd0..aa324474a459 100644 --- a/distribution/adapters/as7-eap6-adapter/pom.xml +++ b/distribution/adapters/as7-eap6-adapter/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml Keycloak AS7 / JBoss EAP 6 Adapter Distros diff --git a/distribution/adapters/fuse-adapter-zip/pom.xml b/distribution/adapters/fuse-adapter-zip/pom.xml index d6012eeb75db..92d7ec8a62f7 100644 --- a/distribution/adapters/fuse-adapter-zip/pom.xml +++ b/distribution/adapters/fuse-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml diff --git a/distribution/adapters/jetty92-adapter-zip/pom.xml b/distribution/adapters/jetty92-adapter-zip/pom.xml index f122bf5282b1..f391c49b8eb1 100755 --- a/distribution/adapters/jetty92-adapter-zip/pom.xml +++ b/distribution/adapters/jetty92-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml diff --git a/distribution/adapters/jetty93-adapter-zip/pom.xml b/distribution/adapters/jetty93-adapter-zip/pom.xml index 36a66509542d..cdbe3eb9c59e 100644 --- a/distribution/adapters/jetty93-adapter-zip/pom.xml +++ b/distribution/adapters/jetty93-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml diff --git a/distribution/adapters/jetty94-adapter-zip/pom.xml b/distribution/adapters/jetty94-adapter-zip/pom.xml index cc0597b6658c..932b19864987 100644 --- a/distribution/adapters/jetty94-adapter-zip/pom.xml +++ b/distribution/adapters/jetty94-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml diff --git a/distribution/adapters/js-adapter-npm-zip/pom.xml b/distribution/adapters/js-adapter-npm-zip/pom.xml index ca8f440374b8..488f1631383d 100755 --- a/distribution/adapters/js-adapter-npm-zip/pom.xml +++ b/distribution/adapters/js-adapter-npm-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml diff --git a/distribution/adapters/js-adapter-zip/pom.xml b/distribution/adapters/js-adapter-zip/pom.xml index 9e32bcf45c37..f15e15a2d795 100755 --- a/distribution/adapters/js-adapter-zip/pom.xml +++ b/distribution/adapters/js-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml diff --git a/distribution/adapters/osgi/features/pom.xml b/distribution/adapters/osgi/features/pom.xml index be7c5b4276df..b0fc9ca01c44 100755 --- a/distribution/adapters/osgi/features/pom.xml +++ b/distribution/adapters/osgi/features/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml Keycloak OSGI Features diff --git a/distribution/adapters/osgi/jaas/pom.xml b/distribution/adapters/osgi/jaas/pom.xml index aa08d03004b1..db8ce6098762 100755 --- a/distribution/adapters/osgi/jaas/pom.xml +++ b/distribution/adapters/osgi/jaas/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml Keycloak OSGI JAAS Realm Configuration diff --git a/distribution/adapters/osgi/pom.xml b/distribution/adapters/osgi/pom.xml index 5906ef2a95e3..fc926b70dc70 100755 --- a/distribution/adapters/osgi/pom.xml +++ b/distribution/adapters/osgi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml Keycloak OSGI Integration diff --git a/distribution/adapters/pom.xml b/distribution/adapters/pom.xml index 17bc327b697b..b13ff97a8af8 100755 --- a/distribution/adapters/pom.xml +++ b/distribution/adapters/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0 + 11.0.1 Adapters Distribution Parent diff --git a/distribution/adapters/tomcat-adapter-zip/pom.xml b/distribution/adapters/tomcat-adapter-zip/pom.xml index 989142987e18..dbf145767123 100755 --- a/distribution/adapters/tomcat-adapter-zip/pom.xml +++ b/distribution/adapters/tomcat-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml diff --git a/distribution/adapters/tomcat7-adapter-zip/pom.xml b/distribution/adapters/tomcat7-adapter-zip/pom.xml index 53611cae696a..e3055a09c86f 100755 --- a/distribution/adapters/tomcat7-adapter-zip/pom.xml +++ b/distribution/adapters/tomcat7-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml diff --git a/distribution/adapters/wildfly-adapter/pom.xml b/distribution/adapters/wildfly-adapter/pom.xml index 33a0c7efc77a..b3e4777442a8 100644 --- a/distribution/adapters/wildfly-adapter/pom.xml +++ b/distribution/adapters/wildfly-adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-adapters-distribution-parent org.keycloak - 11.0.0 + 11.0.1 keycloak-wildfly-adapter-dist diff --git a/distribution/api-docs-dist/pom.xml b/distribution/api-docs-dist/pom.xml index 88f91abeb29a..6e0afe320165 100755 --- a/distribution/api-docs-dist/pom.xml +++ b/distribution/api-docs-dist/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0 + 11.0.1 keycloak-api-docs-dist diff --git a/distribution/downloads/pom.xml b/distribution/downloads/pom.xml index 51dd170bac7c..24143c2b2f76 100755 --- a/distribution/downloads/pom.xml +++ b/distribution/downloads/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0 + 11.0.1 keycloak-dist-downloads diff --git a/distribution/examples-dist/pom.xml b/distribution/examples-dist/pom.xml index b41749e92370..2c89f1e71ca4 100755 --- a/distribution/examples-dist/pom.xml +++ b/distribution/examples-dist/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0 + 11.0.1 keycloak-examples-dist diff --git a/distribution/feature-packs/adapter-feature-pack/pom.xml b/distribution/feature-packs/adapter-feature-pack/pom.xml index 8803764eaa9c..51cdbfd1ff6d 100755 --- a/distribution/feature-packs/adapter-feature-pack/pom.xml +++ b/distribution/feature-packs/adapter-feature-pack/pom.xml @@ -19,7 +19,7 @@ org.keycloak feature-packs-parent - 11.0.0 + 11.0.1 4.0.0 diff --git a/distribution/feature-packs/pom.xml b/distribution/feature-packs/pom.xml index e6cba0a2b2e6..ed8b52756a28 100644 --- a/distribution/feature-packs/pom.xml +++ b/distribution/feature-packs/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0 + 11.0.1 Feature Pack Builds diff --git a/distribution/feature-packs/server-feature-pack/pom.xml b/distribution/feature-packs/server-feature-pack/pom.xml index 6b133d9eb293..a4d7b47a7369 100644 --- a/distribution/feature-packs/server-feature-pack/pom.xml +++ b/distribution/feature-packs/server-feature-pack/pom.xml @@ -19,7 +19,7 @@ org.keycloak feature-packs-parent - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/distribution/licenses-common/pom.xml b/distribution/licenses-common/pom.xml index 7d9833a70611..1fb3ac75eedb 100644 --- a/distribution/licenses-common/pom.xml +++ b/distribution/licenses-common/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0 + 11.0.1 keycloak-distribution-licenses-common diff --git a/distribution/maven-plugins/licenses-processor/pom.xml b/distribution/maven-plugins/licenses-processor/pom.xml index 968cc86a6c17..cd04dcf64b88 100644 --- a/distribution/maven-plugins/licenses-processor/pom.xml +++ b/distribution/maven-plugins/licenses-processor/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-maven-plugins-parent org.keycloak - 11.0.0 + 11.0.1 keycloak-distribution-licenses-maven-plugin diff --git a/distribution/maven-plugins/pom.xml b/distribution/maven-plugins/pom.xml index 59fa9abdb9aa..91dc6ff338cc 100644 --- a/distribution/maven-plugins/pom.xml +++ b/distribution/maven-plugins/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0 + 11.0.1 keycloak-distribution-maven-plugins-parent diff --git a/distribution/pom.xml b/distribution/pom.xml index 641f67e99d1f..2dc97be4ff86 100755 --- a/distribution/pom.xml +++ b/distribution/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml diff --git a/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml index 2c39ed946496..81e7a34515df 100755 --- a/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml +++ b/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml diff --git a/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml index 5b4ce528d634..33693080fb4e 100755 --- a/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml +++ b/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml @@ -25,7 +25,7 @@ keycloak-saml-as7-eap6-adapter-dist-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml diff --git a/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml index d1a665307e10..57fa971b28ee 100755 --- a/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml +++ b/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-saml-as7-eap6-adapter-dist-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml diff --git a/distribution/saml-adapters/as7-eap6-adapter/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/pom.xml index f7dd3f74cde9..4bbfce3d8d86 100755 --- a/distribution/saml-adapters/as7-eap6-adapter/pom.xml +++ b/distribution/saml-adapters/as7-eap6-adapter/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml Keycloak SAML AS7 / JBoss EAP 6 Adapter Distros diff --git a/distribution/saml-adapters/jetty92-adapter-zip/pom.xml b/distribution/saml-adapters/jetty92-adapter-zip/pom.xml index f3f94d544936..154d0f15a4e1 100755 --- a/distribution/saml-adapters/jetty92-adapter-zip/pom.xml +++ b/distribution/saml-adapters/jetty92-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml diff --git a/distribution/saml-adapters/jetty93-adapter-zip/pom.xml b/distribution/saml-adapters/jetty93-adapter-zip/pom.xml index 7e48907e0419..d7c7e9469be5 100644 --- a/distribution/saml-adapters/jetty93-adapter-zip/pom.xml +++ b/distribution/saml-adapters/jetty93-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml diff --git a/distribution/saml-adapters/jetty94-adapter-zip/pom.xml b/distribution/saml-adapters/jetty94-adapter-zip/pom.xml index 807b81a954a1..2352ec2290c3 100644 --- a/distribution/saml-adapters/jetty94-adapter-zip/pom.xml +++ b/distribution/saml-adapters/jetty94-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml diff --git a/distribution/saml-adapters/pom.xml b/distribution/saml-adapters/pom.xml index 330c329e97d6..0701c7719a22 100755 --- a/distribution/saml-adapters/pom.xml +++ b/distribution/saml-adapters/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0 + 11.0.1 SAML Adapters Distribution Parent diff --git a/distribution/saml-adapters/tomcat-adapter-zip/pom.xml b/distribution/saml-adapters/tomcat-adapter-zip/pom.xml index 440ac46f92f0..54c4be0e18ba 100755 --- a/distribution/saml-adapters/tomcat-adapter-zip/pom.xml +++ b/distribution/saml-adapters/tomcat-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml diff --git a/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml b/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml index 44cc3ce80691..7bbfcce7d7ca 100755 --- a/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml +++ b/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml diff --git a/distribution/saml-adapters/wildfly-adapter/pom.xml b/distribution/saml-adapters/wildfly-adapter/pom.xml index 7cd9d181a561..9bbe63aab798 100755 --- a/distribution/saml-adapters/wildfly-adapter/pom.xml +++ b/distribution/saml-adapters/wildfly-adapter/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../pom.xml Keycloak Wildfly SAML Adapter diff --git a/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml b/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml index cf7c1e80c4b9..8e358f731120 100755 --- a/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml +++ b/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml diff --git a/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml b/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml index b625d4dfcff8..1debbca3f69f 100755 --- a/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml +++ b/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml @@ -25,7 +25,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../../../pom.xml diff --git a/distribution/server-dist/pom.xml b/distribution/server-dist/pom.xml index 107b44dffbe8..db5c93e0081c 100755 --- a/distribution/server-dist/pom.xml +++ b/distribution/server-dist/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0 + 11.0.1 keycloak-server-dist diff --git a/distribution/server-overlay/pom.xml b/distribution/server-overlay/pom.xml index 266dd37d0199..cd9dbf3280bd 100755 --- a/distribution/server-overlay/pom.xml +++ b/distribution/server-overlay/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0 + 11.0.1 keycloak-server-overlay diff --git a/distribution/server-x/pom.xml b/distribution/server-x/pom.xml index 1bb0c751bfc8..04e63a5b4a7c 100755 --- a/distribution/server-x/pom.xml +++ b/distribution/server-x/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.0 + 11.0.1 keycloak-server-x diff --git a/examples/admin-client/pom.xml b/examples/admin-client/pom.xml index e7795879c620..38c316d237da 100755 --- a/examples/admin-client/pom.xml +++ b/examples/admin-client/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-parent org.keycloak - 11.0.0 + 11.0.1 Keycloak Examples - Admin Client diff --git a/examples/basic-auth/pom.xml b/examples/basic-auth/pom.xml index 0b2ce40c706a..a3ff21d0aad6 100755 --- a/examples/basic-auth/pom.xml +++ b/examples/basic-auth/pom.xml @@ -23,7 +23,7 @@ keycloak-examples-parent org.keycloak - 11.0.0 + 11.0.1 Keycloak Examples - Basic Auth diff --git a/examples/broker/facebook-authentication/pom.xml b/examples/broker/facebook-authentication/pom.xml index 8cacfacf282a..71a9ac6048c0 100755 --- a/examples/broker/facebook-authentication/pom.xml +++ b/examples/broker/facebook-authentication/pom.xml @@ -23,7 +23,7 @@ keycloak-examples-broker-parent org.keycloak - 11.0.0 + 11.0.1 Keycloak Broker Examples - Facebook Authentication diff --git a/examples/broker/google-authentication/pom.xml b/examples/broker/google-authentication/pom.xml index 085ad48cb96f..c10e911dfc78 100755 --- a/examples/broker/google-authentication/pom.xml +++ b/examples/broker/google-authentication/pom.xml @@ -23,7 +23,7 @@ keycloak-examples-broker-parent org.keycloak - 11.0.0 + 11.0.1 Keycloak Broker Examples - Google Authentication diff --git a/examples/broker/pom.xml b/examples/broker/pom.xml index ee59995be333..de38b699c57f 100755 --- a/examples/broker/pom.xml +++ b/examples/broker/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-parent org.keycloak - 11.0.0 + 11.0.1 Broker Examples diff --git a/examples/broker/saml-broker-authentication/pom.xml b/examples/broker/saml-broker-authentication/pom.xml index 6263600514b9..2acc05e60ec6 100755 --- a/examples/broker/saml-broker-authentication/pom.xml +++ b/examples/broker/saml-broker-authentication/pom.xml @@ -23,7 +23,7 @@ keycloak-examples-broker-parent org.keycloak - 11.0.0 + 11.0.1 Keycloak Broker Examples - SAML Identity Provider Brokering diff --git a/examples/broker/twitter-authentication/pom.xml b/examples/broker/twitter-authentication/pom.xml index 56c28b00c97e..597d807b0179 100755 --- a/examples/broker/twitter-authentication/pom.xml +++ b/examples/broker/twitter-authentication/pom.xml @@ -23,7 +23,7 @@ keycloak-examples-broker-parent org.keycloak - 11.0.0 + 11.0.1 Keycloak Broker Examples - Twitter Authentication diff --git a/examples/cors/angular-product-app/pom.xml b/examples/cors/angular-product-app/pom.xml index c18aab6aeba3..a0dd2eb543eb 100755 --- a/examples/cors/angular-product-app/pom.xml +++ b/examples/cors/angular-product-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-cors-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/examples/cors/database-service/pom.xml b/examples/cors/database-service/pom.xml index 1d90b0c5f6e9..eb025bd7ae9f 100755 --- a/examples/cors/database-service/pom.xml +++ b/examples/cors/database-service/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-cors-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/examples/cors/pom.xml b/examples/cors/pom.xml index 1cdfe630bb2b..99c66e9bfbd2 100755 --- a/examples/cors/pom.xml +++ b/examples/cors/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-parent org.keycloak - 11.0.0 + 11.0.1 Keycloak Examples - CORS diff --git a/examples/demo-template/admin-access-app/pom.xml b/examples/demo-template/admin-access-app/pom.xml index 7db01f503d73..dc37afeef7b5 100755 --- a/examples/demo-template/admin-access-app/pom.xml +++ b/examples/demo-template/admin-access-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/examples/demo-template/angular-product-app/pom.xml b/examples/demo-template/angular-product-app/pom.xml index f1271ed772dc..7f2a26b4bf76 100755 --- a/examples/demo-template/angular-product-app/pom.xml +++ b/examples/demo-template/angular-product-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/examples/demo-template/customer-app-cli/pom.xml b/examples/demo-template/customer-app-cli/pom.xml index a84b8988176d..279535ec9b7e 100755 --- a/examples/demo-template/customer-app-cli/pom.xml +++ b/examples/demo-template/customer-app-cli/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/examples/demo-template/customer-app-filter/pom.xml b/examples/demo-template/customer-app-filter/pom.xml index 7e26cf44a865..e325a6e78c28 100755 --- a/examples/demo-template/customer-app-filter/pom.xml +++ b/examples/demo-template/customer-app-filter/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/examples/demo-template/customer-app-js/pom.xml b/examples/demo-template/customer-app-js/pom.xml index e98ec80e4380..bf6f065a6e89 100755 --- a/examples/demo-template/customer-app-js/pom.xml +++ b/examples/demo-template/customer-app-js/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/examples/demo-template/customer-app/pom.xml b/examples/demo-template/customer-app/pom.xml index 46b58c864377..db9901d228ff 100755 --- a/examples/demo-template/customer-app/pom.xml +++ b/examples/demo-template/customer-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/examples/demo-template/database-service/pom.xml b/examples/demo-template/database-service/pom.xml index 6dd95292c8eb..21ea28e7ad70 100755 --- a/examples/demo-template/database-service/pom.xml +++ b/examples/demo-template/database-service/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/examples/demo-template/example-ear/pom.xml b/examples/demo-template/example-ear/pom.xml index 445044c845b0..309564bb6255 100755 --- a/examples/demo-template/example-ear/pom.xml +++ b/examples/demo-template/example-ear/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/examples/demo-template/offline-access-app/pom.xml b/examples/demo-template/offline-access-app/pom.xml index b6ff3069e9bb..7ce18518868c 100755 --- a/examples/demo-template/offline-access-app/pom.xml +++ b/examples/demo-template/offline-access-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/examples/demo-template/pom.xml b/examples/demo-template/pom.xml index 6c3c87249234..687de04b5705 100755 --- a/examples/demo-template/pom.xml +++ b/examples/demo-template/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-parent org.keycloak - 11.0.0 + 11.0.1 Demo Examples diff --git a/examples/demo-template/product-app/pom.xml b/examples/demo-template/product-app/pom.xml index 09fb7f4c2cd5..757925cc9165 100755 --- a/examples/demo-template/product-app/pom.xml +++ b/examples/demo-template/product-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/examples/demo-template/service-account/pom.xml b/examples/demo-template/service-account/pom.xml index 951fc868e5e7..922411790722 100755 --- a/examples/demo-template/service-account/pom.xml +++ b/examples/demo-template/service-account/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/examples/js-console/pom.xml b/examples/js-console/pom.xml index d2bff26fce8f..bbffa244f961 100755 --- a/examples/js-console/pom.xml +++ b/examples/js-console/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/examples/kerberos/pom.xml b/examples/kerberos/pom.xml index 2c09c37dbb2e..af915f89558e 100755 --- a/examples/kerberos/pom.xml +++ b/examples/kerberos/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-parent org.keycloak - 11.0.0 + 11.0.1 Keycloak Examples - Kerberos Credential Delegation diff --git a/examples/ldap/pom.xml b/examples/ldap/pom.xml index d684223a4483..219f6446dfa6 100644 --- a/examples/ldap/pom.xml +++ b/examples/ldap/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/examples/multi-tenant/pom.xml b/examples/multi-tenant/pom.xml index 874a831a6767..a92e03261865 100755 --- a/examples/multi-tenant/pom.xml +++ b/examples/multi-tenant/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-parent org.keycloak - 11.0.0 + 11.0.1 Keycloak Examples - Multi Tenant diff --git a/examples/pom.xml b/examples/pom.xml index 1f262dc4ea1f..77c31cf1a2e4 100755 --- a/examples/pom.xml +++ b/examples/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 Keycloak Examples diff --git a/examples/providers/authenticator/pom.xml b/examples/providers/authenticator/pom.xml index 0d2178e7e643..ba66d4b4dfed 100755 --- a/examples/providers/authenticator/pom.xml +++ b/examples/providers/authenticator/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-providers-parent org.keycloak - 11.0.0 + 11.0.1 Authenticator Example diff --git a/examples/providers/domain-extension/pom.xml b/examples/providers/domain-extension/pom.xml index 126b3c0d2b21..4e1e157ddffd 100755 --- a/examples/providers/domain-extension/pom.xml +++ b/examples/providers/domain-extension/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-providers-parent org.keycloak - 11.0.0 + 11.0.1 Domain Extension Example diff --git a/examples/providers/pom.xml b/examples/providers/pom.xml index a8317128d8f3..6c4eafcca53c 100755 --- a/examples/providers/pom.xml +++ b/examples/providers/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-parent org.keycloak - 11.0.0 + 11.0.1 Provider Examples diff --git a/examples/providers/rest/pom.xml b/examples/providers/rest/pom.xml index 18ac440a377e..09b8db5f3e3f 100755 --- a/examples/providers/rest/pom.xml +++ b/examples/providers/rest/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-providers-parent org.keycloak - 11.0.0 + 11.0.1 REST Example diff --git a/examples/saml/pom.xml b/examples/saml/pom.xml index e58c7da41050..c35073984d1a 100755 --- a/examples/saml/pom.xml +++ b/examples/saml/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-parent org.keycloak - 11.0.0 + 11.0.1 SAML Examples diff --git a/examples/saml/post-with-encryption/pom.xml b/examples/saml/post-with-encryption/pom.xml index c8679bccf797..359688b66d57 100755 --- a/examples/saml/post-with-encryption/pom.xml +++ b/examples/saml/post-with-encryption/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-saml-parent org.keycloak - 11.0.0 + 11.0.1 saml-post-encryption diff --git a/examples/saml/post-with-signature/pom.xml b/examples/saml/post-with-signature/pom.xml index e47c16593ddf..4f8228371a5d 100755 --- a/examples/saml/post-with-signature/pom.xml +++ b/examples/saml/post-with-signature/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-saml-parent org.keycloak - 11.0.0 + 11.0.1 sales-post-sig diff --git a/examples/saml/redirect-with-signature/pom.xml b/examples/saml/redirect-with-signature/pom.xml index ba71f6f14488..0855152c43ff 100755 --- a/examples/saml/redirect-with-signature/pom.xml +++ b/examples/saml/redirect-with-signature/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-saml-parent org.keycloak - 11.0.0 + 11.0.1 saml-redirect-signatures diff --git a/examples/saml/servlet-filter/pom.xml b/examples/saml/servlet-filter/pom.xml index 3edbb05d5eaa..2aab53b22d4a 100755 --- a/examples/saml/servlet-filter/pom.xml +++ b/examples/saml/servlet-filter/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-saml-parent org.keycloak - 11.0.0 + 11.0.1 saml-servlet-filter diff --git a/examples/themes/pom.xml b/examples/themes/pom.xml index 3132e25a3cd4..028011a3d9ca 100755 --- a/examples/themes/pom.xml +++ b/examples/themes/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-parent org.keycloak - 11.0.0 + 11.0.1 Themes Examples diff --git a/federation/kerberos/pom.xml b/federation/kerberos/pom.xml index 56df95351ef8..efb500a8ea23 100755 --- a/federation/kerberos/pom.xml +++ b/federation/kerberos/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../pom.xml 4.0.0 diff --git a/federation/ldap/pom.xml b/federation/ldap/pom.xml index b697a570a60c..b15f189f9dd2 100755 --- a/federation/ldap/pom.xml +++ b/federation/ldap/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../pom.xml 4.0.0 diff --git a/federation/pom.xml b/federation/pom.xml index ecf08281d9b1..59ef5f7d85fc 100755 --- a/federation/pom.xml +++ b/federation/pom.xml @@ -22,7 +22,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/federation/sssd/pom.xml b/federation/sssd/pom.xml index 58998d7eff5c..9141961aec2f 100644 --- a/federation/sssd/pom.xml +++ b/federation/sssd/pom.xml @@ -4,7 +4,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../pom.xml 4.0.0 diff --git a/integration/admin-client/pom.xml b/integration/admin-client/pom.xml index 8e2ce307967f..ccae90aab014 100755 --- a/integration/admin-client/pom.xml +++ b/integration/admin-client/pom.xml @@ -22,7 +22,7 @@ keycloak-integration-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/integration/client-cli/admin-cli/pom.xml b/integration/client-cli/admin-cli/pom.xml index 612c3955b68a..7f83fec65857 100755 --- a/integration/client-cli/admin-cli/pom.xml +++ b/integration/client-cli/admin-cli/pom.xml @@ -21,7 +21,7 @@ keycloak-client-cli-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/integration/client-cli/client-cli-dist/pom.xml b/integration/client-cli/client-cli-dist/pom.xml index 207298207a10..11eaeb127277 100755 --- a/integration/client-cli/client-cli-dist/pom.xml +++ b/integration/client-cli/client-cli-dist/pom.xml @@ -21,7 +21,7 @@ keycloak-client-cli-parent org.keycloak - 11.0.0 + 11.0.1 keycloak-client-cli-dist diff --git a/integration/client-cli/client-registration-cli/pom.xml b/integration/client-cli/client-registration-cli/pom.xml index b9180d20bc32..308c473b9c19 100755 --- a/integration/client-cli/client-registration-cli/pom.xml +++ b/integration/client-cli/client-registration-cli/pom.xml @@ -21,7 +21,7 @@ keycloak-client-cli-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/integration/client-cli/pom.xml b/integration/client-cli/pom.xml index 9a4e48ba39f4..901fb6bd350c 100644 --- a/integration/client-cli/pom.xml +++ b/integration/client-cli/pom.xml @@ -20,7 +20,7 @@ keycloak-integration-parent org.keycloak - 11.0.0 + 11.0.1 Keycloak Client CLI diff --git a/integration/client-registration/pom.xml b/integration/client-registration/pom.xml index 5711609f0d1b..16ec963c88b6 100755 --- a/integration/client-registration/pom.xml +++ b/integration/client-registration/pom.xml @@ -21,7 +21,7 @@ keycloak-integration-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/integration/pom.xml b/integration/pom.xml index 5ac6fa0d55b6..e13ea5ff5088 100755 --- a/integration/pom.xml +++ b/integration/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml Keycloak Integration diff --git a/misc/keycloak-test-helper/pom.xml b/misc/keycloak-test-helper/pom.xml index efa56b62ed70..b980cea6531f 100644 --- a/misc/keycloak-test-helper/pom.xml +++ b/misc/keycloak-test-helper/pom.xml @@ -6,7 +6,7 @@ keycloak-misc-parent org.keycloak - 11.0.0 + 11.0.1 org.keycloak keycloak-test-helper diff --git a/misc/pom.xml b/misc/pom.xml index 01460dfc0092..22ccf45dffe2 100644 --- a/misc/pom.xml +++ b/misc/pom.xml @@ -3,7 +3,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 Keycloak Misc diff --git a/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml b/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml index 22d06d542df3..cfd6ada0357d 100644 --- a/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml +++ b/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml @@ -4,7 +4,7 @@ org.keycloak keycloak-spring-boot-starter-parent - 11.0.0 + 11.0.1 keycloak-spring-boot-starter Keycloak :: Spring :: Boot :: Default :: Starter diff --git a/misc/spring-boot-starter/pom.xml b/misc/spring-boot-starter/pom.xml index f6025e912e15..f936a996b325 100644 --- a/misc/spring-boot-starter/pom.xml +++ b/misc/spring-boot-starter/pom.xml @@ -5,7 +5,7 @@ keycloak-misc-parent org.keycloak - 11.0.0 + 11.0.1 org.keycloak keycloak-spring-boot-starter-parent diff --git a/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml b/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml index 38e029a1c773..0e459a1ca102 100644 --- a/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml +++ b/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml @@ -4,7 +4,7 @@ org.keycloak keycloak-legacy-spring-boot-starter-parent - 11.0.0 + 11.0.1 keycloak-legacy-spring-boot-starter Keycloak :: Legacy :: Spring :: Boot :: Default :: Starter diff --git a/misc/spring-legacy-boot-starter/pom.xml b/misc/spring-legacy-boot-starter/pom.xml index 3f2dfa96559e..6bc7dbcfc53a 100644 --- a/misc/spring-legacy-boot-starter/pom.xml +++ b/misc/spring-legacy-boot-starter/pom.xml @@ -5,7 +5,7 @@ keycloak-misc-parent org.keycloak - 11.0.0 + 11.0.1 org.keycloak keycloak-legacy-spring-boot-starter-parent diff --git a/model/infinispan/pom.xml b/model/infinispan/pom.xml index 228467080b05..df47a544b9ef 100755 --- a/model/infinispan/pom.xml +++ b/model/infinispan/pom.xml @@ -21,7 +21,7 @@ keycloak-model-pom org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/model/jpa/pom.xml b/model/jpa/pom.xml index 2f904b4f600b..82c44395dd29 100755 --- a/model/jpa/pom.xml +++ b/model/jpa/pom.xml @@ -21,7 +21,7 @@ keycloak-model-pom org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/model/map/pom.xml b/model/map/pom.xml index 4736b6d9590e..c68a4558a547 100644 --- a/model/map/pom.xml +++ b/model/map/pom.xml @@ -3,7 +3,7 @@ keycloak-model-pom org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/model/pom.xml b/model/pom.xml index e8c6d71d32d1..3e8bab55b6b4 100755 --- a/model/pom.xml +++ b/model/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml Keycloak Model Parent diff --git a/pom.xml b/pom.xml index c8d227981f3c..baf5c787bca3 100755 --- a/pom.xml +++ b/pom.xml @@ -31,7 +31,7 @@ org.keycloak keycloak-parent - 11.0.0 + 11.0.1 pom diff --git a/quarkus/deployment/pom.xml b/quarkus/deployment/pom.xml index 55f909e5991e..3b8e615c2125 100644 --- a/quarkus/deployment/pom.xml +++ b/quarkus/deployment/pom.xml @@ -5,7 +5,7 @@ keycloak-quarkus-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/quarkus/pom.xml b/quarkus/pom.xml index 892b3b179059..2acc3d1ad647 100755 --- a/quarkus/pom.xml +++ b/quarkus/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml Keycloak Quarkus Parent diff --git a/quarkus/runtime/pom.xml b/quarkus/runtime/pom.xml index 7ee78c3377af..b10f1d10a2a5 100644 --- a/quarkus/runtime/pom.xml +++ b/quarkus/runtime/pom.xml @@ -5,7 +5,7 @@ keycloak-quarkus-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/quarkus/server/pom.xml b/quarkus/server/pom.xml index 91e7e41352e0..84dd339625b3 100644 --- a/quarkus/server/pom.xml +++ b/quarkus/server/pom.xml @@ -7,7 +7,7 @@ keycloak-quarkus-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml diff --git a/release-details b/release-details index b50ce4107ce1..613dd654cf3d 100644 --- a/release-details +++ b/release-details @@ -1,3 +1,3 @@ -VERSION=11.0.0 +VERSION=11.0.1 SHORT_VERSION=11.0 -NPM_VERSION=11.0.0 +NPM_VERSION=11.0.1 diff --git a/saml-core-api/pom.xml b/saml-core-api/pom.xml index cb17473a643b..55e5fd1b91ae 100755 --- a/saml-core-api/pom.xml +++ b/saml-core-api/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/saml-core/pom.xml b/saml-core/pom.xml index 09f4d9bb146d..18f0063c6575 100755 --- a/saml-core/pom.xml +++ b/saml-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/server-spi-private/pom.xml b/server-spi-private/pom.xml index eacd2eefce07..72a3ff7ae44d 100755 --- a/server-spi-private/pom.xml +++ b/server-spi-private/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/server-spi/pom.xml b/server-spi/pom.xml index a0d61be1fbda..04415ed194bc 100755 --- a/server-spi/pom.xml +++ b/server-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/services/pom.xml b/services/pom.xml index 18d9e2584fc2..d4941b9d0690 100755 --- a/services/pom.xml +++ b/services/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/testsuite/db-allocator-plugin/pom.xml b/testsuite/db-allocator-plugin/pom.xml index 1e080c202084..6bc04d069588 100644 --- a/testsuite/db-allocator-plugin/pom.xml +++ b/testsuite/db-allocator-plugin/pom.xml @@ -22,7 +22,7 @@ keycloak-testsuite-pom org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/pom.xml b/testsuite/integration-arquillian/pom.xml index af3593615822..e518edbd3dfc 100644 --- a/testsuite/integration-arquillian/pom.xml +++ b/testsuite/integration-arquillian/pom.xml @@ -24,7 +24,7 @@ org.keycloak keycloak-testsuite-pom - 11.0.0 + 11.0.1 ../pom.xml diff --git a/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml b/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml index cf244972e77a..e9f5ca0780ec 100644 --- a/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml index ff51b6a8747d..6292d0e4d295 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml index 28f737e8d32d..c50bb0ecafc3 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml index ccc836c6625c..2fb9662fa761 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml @@ -22,7 +22,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml index 5232c9cd0151..42902e42256f 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss-relative - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml index 226236c26bd3..88284d627c4f 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml index 73f3fc67b3a9..24dbbf51f175 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss-relative - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml index d8a04f4b5931..07963397eca2 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml index 1f3ab037c0ee..a19f24426251 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml index 9262b7899626..d64bb997321d 100644 --- a/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jetty - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml index b62d5f485ac0..1989d3d4c737 100644 --- a/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jetty - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml index 4b2d7688ad4b..1529afede888 100644 --- a/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jetty - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml index 9fa564aa0059..6a73d5a9843f 100644 --- a/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jetty - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml index 13848e3c339d..d895bba32152 100644 --- a/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml b/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml index 3d40bda7ae2a..0d714d5a5786 100644 --- a/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-karaf - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml b/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml index 7c3e67ace6e3..b8769e100856 100644 --- a/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-karaf - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml b/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml index cfef84f20843..8ca9aaadf6a9 100644 --- a/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/pom.xml b/testsuite/integration-arquillian/servers/app-server/pom.xml index 38d144133585..2063f6fb6031 100644 --- a/testsuite/integration-arquillian/servers/app-server/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml index 86c96f277adb..251a0f0a4fe7 100644 --- a/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-servers-app-server-tomcat org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml index 1eafd24e153a..46d67a3d0aec 100644 --- a/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml index d648fced96fd..680740d12769 100644 --- a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-tomcat - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml index 197d9e2ff7ba..5958ad3ba480 100644 --- a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-tomcat - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml index 638d81b79680..0088fa303fbe 100644 --- a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-tomcat - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml b/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml index c264a3e0db21..61fada989cab 100644 --- a/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml index ebb5ca69423a..577dbf80dfe5 100644 --- a/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server-jboss - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml index 74318adf7c20..019c0b6e2b51 100644 --- a/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server-jboss - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml index af065018a89d..a02621f327a9 100644 --- a/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml index a938d954b447..fc67038f2f63 100644 --- a/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server-jboss - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/pom.xml b/testsuite/integration-arquillian/servers/auth-server/pom.xml index 6fb8fba0ce24..1bd7697eacbe 100644 --- a/testsuite/integration-arquillian/servers/auth-server/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml b/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml index f9c138ba1fb7..fe227cde917f 100644 --- a/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-servers-auth-server org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/services/pom.xml b/testsuite/integration-arquillian/servers/auth-server/services/pom.xml index b44020c38d3b..2c3f4e4a7738 100644 --- a/testsuite/integration-arquillian/servers/auth-server/services/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/services/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml b/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml index 5522bc265173..e7ee46d200ef 100644 --- a/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server-services - 11.0.0 + 11.0.1 integration-arquillian-testsuite-providers diff --git a/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml b/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml index 5bc6334a9555..a6010a078fe8 100644 --- a/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml b/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml index 4206df89e729..4edae8824dab 100644 --- a/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml +++ b/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-cache-server-jboss - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml b/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml index 6a3198a74da5..b372e79e32ea 100644 --- a/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml +++ b/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-cache-server-jboss - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml b/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml index b79e8c326a87..690208c0ab9e 100644 --- a/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml +++ b/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-cache-server - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/cache-server/pom.xml b/testsuite/integration-arquillian/servers/cache-server/pom.xml index 05d42896a4ff..198d0735fa10 100644 --- a/testsuite/integration-arquillian/servers/cache-server/pom.xml +++ b/testsuite/integration-arquillian/servers/cache-server/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/migration/pom.xml b/testsuite/integration-arquillian/servers/migration/pom.xml index 094b635697a8..796224bf0454 100644 --- a/testsuite/integration-arquillian/servers/migration/pom.xml +++ b/testsuite/integration-arquillian/servers/migration/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/servers/pom.xml b/testsuite/integration-arquillian/servers/pom.xml index f37ddef19b06..7c8021c7fdde 100644 --- a/testsuite/integration-arquillian/servers/pom.xml +++ b/testsuite/integration-arquillian/servers/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml b/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml index 26fe8966ebfc..3a3f6f2fc697 100644 --- a/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml +++ b/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml @@ -5,7 +5,7 @@ org.keycloak.testsuite integration-arquillian-test-apps - 11.0.0 + 11.0.1 keycloak-test-app-profile-jee diff --git a/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml b/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml index ce07d1d22120..a294b6ba5208 100755 --- a/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml +++ b/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-test-apps-cors-parent - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml b/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml index e12374de1f10..65737369244a 100755 --- a/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml +++ b/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-test-apps-cors-parent - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/cors/pom.xml b/testsuite/integration-arquillian/test-apps/cors/pom.xml index 7f1eefb713ed..ab98fc2e92eb 100644 --- a/testsuite/integration-arquillian/test-apps/cors/pom.xml +++ b/testsuite/integration-arquillian/test-apps/cors/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-test-apps org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml index 02a4b0a7c8f4..346794262d7e 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml index fa144fb69cfd..24b9dac4ed1a 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml index c093df8efeaf..1e54e825cf4c 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml index 66aa05f380e3..1c6787e95bbf 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml index 26d8f4bbe046..754fc579b0e9 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml index 28091c7103f7..bd2dc86ab12a 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml index 146298387f72..976b6deedd61 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml index f767fca9146e..910cf60e0eea 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0 + 11.0.1 Keycloak Examples - External Config diff --git a/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml index d3386c104721..9ec707040800 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/pom.xml index 1f1168ced6d2..71695ab24700 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/pom.xml @@ -20,7 +20,7 @@ integration-arquillian-test-apps org.keycloak.testsuite - 11.0.0 + 11.0.1 Fuse Test Applications diff --git a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml index 7b232c484a2e..c46ac181275d 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml index 59280f8d7fe5..3ad45c34bede 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml b/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml index 7ac813a89df8..46fda44769b5 100755 --- a/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml +++ b/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-test-apps - 11.0.0 + 11.0.1 hello-world-authz-service diff --git a/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml b/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml index 0a1d1555f9a8..4fc6bbbc1847 100755 --- a/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml +++ b/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml @@ -5,7 +5,7 @@ org.keycloak.testsuite integration-arquillian-test-apps-photoz-parent - 11.0.0 + 11.0.1 ../pom.xml diff --git a/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml b/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml index 193b60de1ede..37de432d62ff 100755 --- a/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml +++ b/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml @@ -6,7 +6,7 @@ org.keycloak.testsuite integration-arquillian-test-apps-photoz-parent - 11.0.0 + 11.0.1 ../pom.xml diff --git a/testsuite/integration-arquillian/test-apps/photoz/pom.xml b/testsuite/integration-arquillian/test-apps/photoz/pom.xml index 06be533fcb89..0ed20ff0bb8f 100755 --- a/testsuite/integration-arquillian/test-apps/photoz/pom.xml +++ b/testsuite/integration-arquillian/test-apps/photoz/pom.xml @@ -6,7 +6,7 @@ org.keycloak.testsuite integration-arquillian-test-apps - 11.0.0 + 11.0.1 integration-arquillian-test-apps-photoz-parent diff --git a/testsuite/integration-arquillian/test-apps/pom.xml b/testsuite/integration-arquillian/test-apps/pom.xml index 8369107eb2c6..e34e83a5d00b 100644 --- a/testsuite/integration-arquillian/test-apps/pom.xml +++ b/testsuite/integration-arquillian/test-apps/pom.xml @@ -5,7 +5,7 @@ integration-arquillian org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml b/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml index 37f0b429b9ff..8b688491309e 100755 --- a/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml +++ b/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml @@ -6,7 +6,7 @@ org.keycloak.testsuite integration-arquillian-test-apps - 11.0.0 + 11.0.1 servlet-authz-app diff --git a/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml b/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml index 8b372ffe8941..d25b204e1c85 100755 --- a/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml +++ b/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-test-apps - 11.0.0 + 11.0.1 servlet-policy-enforcer diff --git a/testsuite/integration-arquillian/test-apps/servlets/pom.xml b/testsuite/integration-arquillian/test-apps/servlets/pom.xml index 36de7a89192e..ae209836dba5 100644 --- a/testsuite/integration-arquillian/test-apps/servlets/pom.xml +++ b/testsuite/integration-arquillian/test-apps/servlets/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-test-apps org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml b/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml index ae36cd1f7e9b..de0a302de294 100644 --- a/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml +++ b/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-test-apps org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml b/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml index 826fbebfd337..5cba884d3467 100644 --- a/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml +++ b/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-test-apps org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/tests/base/pom.xml b/testsuite/integration-arquillian/tests/base/pom.xml index 773861532ba4..0e86fec6db16 100644 --- a/testsuite/integration-arquillian/tests/base/pom.xml +++ b/testsuite/integration-arquillian/tests/base/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-tests - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml index 4fd4483e6e61..754b6615cc8b 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters - 11.0.0 + 11.0.1 integration-arquillian-tests-adapters-jboss diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml index 2cdebd08bb82..42522cb6e549 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-jboss-relative - 11.0.0 + 11.0.1 integration-arquillian-tests-adapters-relative-eap diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml index 57a1783149b0..85cf373bf06b 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-jboss - 11.0.0 + 11.0.1 pom diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml index 64fe2a595ca7..5cedfe10c22d 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-jboss-relative - 11.0.0 + 11.0.1 integration-arquillian-tests-adapters-relative-wildfly diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml index 166864022c03..0f5d4dcdb14c 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-jboss - 11.0.0 + 11.0.1 integration-arquillian-tests-adapters-remote diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml index 430d60ace3d9..b56fb07dccb1 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-karaf - 11.0.0 + 11.0.1 integration-arquillian-tests-adapters-fuse61 diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml index e0f376217d23..d602ab6c9474 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-karaf - 11.0.0 + 11.0.1 integration-arquillian-tests-adapters-fuse62 diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml index 474d01d3eede..accad5c0ad6b 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-karaf - 11.0.0 + 11.0.1 integration-arquillian-tests-adapters-karaf3 diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml index 8363ccc86561..e2dd7cc800f4 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters - 11.0.0 + 11.0.1 integration-arquillian-tests-adapters-karaf diff --git a/testsuite/integration-arquillian/tests/other/adapters/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/pom.xml index ae1face333df..78fad156d359 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.0 + 11.0.1 integration-arquillian-tests-adapters diff --git a/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml index ac9d820c537c..c6fcff70b5ac 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters - 11.0.0 + 11.0.1 integration-arquillian-tests-adapters-was diff --git a/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml index 5707b85a022b..e2018196c23c 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-was - 11.0.0 + 11.0.1 integration-arquillian-tests-adapters-was8 diff --git a/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml index 31e618bbb7be..9e00ef3faa58 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters - 11.0.0 + 11.0.1 integration-arquillian-tests-adapters-wls diff --git a/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml index 9e5d056e62bd..b955b89599fc 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-wls - 11.0.0 + 11.0.1 integration-arquillian-tests-adapters-wls12 diff --git a/testsuite/integration-arquillian/tests/other/base-ui/pom.xml b/testsuite/integration-arquillian/tests/other/base-ui/pom.xml index f65fa109fe40..d23ff08fc883 100644 --- a/testsuite/integration-arquillian/tests/other/base-ui/pom.xml +++ b/testsuite/integration-arquillian/tests/other/base-ui/pom.xml @@ -22,7 +22,7 @@ integration-arquillian-tests-other org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/tests/other/clean-start/pom.xml b/testsuite/integration-arquillian/tests/other/clean-start/pom.xml index 428dace66599..898f6cc5b9aa 100644 --- a/testsuite/integration-arquillian/tests/other/clean-start/pom.xml +++ b/testsuite/integration-arquillian/tests/other/clean-start/pom.xml @@ -23,7 +23,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.0 + 11.0.1 integration-arquillian-tests-smoke-clean-start diff --git a/testsuite/integration-arquillian/tests/other/console/pom.xml b/testsuite/integration-arquillian/tests/other/console/pom.xml index b4e7c2972eee..6136776ca895 100644 --- a/testsuite/integration-arquillian/tests/other/console/pom.xml +++ b/testsuite/integration-arquillian/tests/other/console/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.0 + 11.0.1 integration-arquillian-tests-console diff --git a/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml b/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml index 9d533142be8e..1b7017dba7fc 100644 --- a/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml +++ b/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.0 + 11.0.1 integration-arquillian-tests-jpa-performance diff --git a/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml b/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml index f76b3c50d0b2..d41fbc704fa8 100644 --- a/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml +++ b/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.0 + 11.0.1 integration-arquillian-tests-other-mod_auth_mellon diff --git a/testsuite/integration-arquillian/tests/other/pom.xml b/testsuite/integration-arquillian/tests/other/pom.xml index db372314f00a..9b305a64ff33 100644 --- a/testsuite/integration-arquillian/tests/other/pom.xml +++ b/testsuite/integration-arquillian/tests/other/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests - 11.0.0 + 11.0.1 integration-arquillian-tests-other diff --git a/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml b/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml index 0586b787dc9f..c03de34b4801 100644 --- a/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml +++ b/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.0 + 11.0.1 ../pom.xml diff --git a/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml b/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml index 65f5a43c4ec4..0e094e94ab73 100644 --- a/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml +++ b/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-tests-other org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/tests/other/sssd/pom.xml b/testsuite/integration-arquillian/tests/other/sssd/pom.xml index c8d26fda266f..6db576d88815 100644 --- a/testsuite/integration-arquillian/tests/other/sssd/pom.xml +++ b/testsuite/integration-arquillian/tests/other/sssd/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-tests-other org.keycloak.testsuite - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/integration-arquillian/tests/pom.xml b/testsuite/integration-arquillian/tests/pom.xml index ac71633ee338..1e49940c24ae 100755 --- a/testsuite/integration-arquillian/tests/pom.xml +++ b/testsuite/integration-arquillian/tests/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian - 11.0.0 + 11.0.1 pom diff --git a/testsuite/integration-arquillian/util/pom.xml b/testsuite/integration-arquillian/util/pom.xml index ca6b548268c0..4e678ba9f9af 100644 --- a/testsuite/integration-arquillian/util/pom.xml +++ b/testsuite/integration-arquillian/util/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian - 11.0.0 + 11.0.1 4.0.0 diff --git a/testsuite/performance/infinispan/pom.xml b/testsuite/performance/infinispan/pom.xml index 2efb992ebea6..362f63655eeb 100644 --- a/testsuite/performance/infinispan/pom.xml +++ b/testsuite/performance/infinispan/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite performance - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/testsuite/performance/keycloak/pom.xml b/testsuite/performance/keycloak/pom.xml index eb33c1cdba6d..dcffb8789241 100644 --- a/testsuite/performance/keycloak/pom.xml +++ b/testsuite/performance/keycloak/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite performance - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml b/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml index dfe76357e330..fe7b0c1bbba0 100644 --- a/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml +++ b/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite performance - 11.0.0 + 11.0.1 ../../pom.xml 4.0.0 diff --git a/testsuite/performance/pom.xml b/testsuite/performance/pom.xml index 7025454a265c..a879535177f7 100644 --- a/testsuite/performance/pom.xml +++ b/testsuite/performance/pom.xml @@ -21,7 +21,7 @@ keycloak-testsuite-pom org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/testsuite/performance/tests/pom.xml b/testsuite/performance/tests/pom.xml index d149bd591d20..ec409b68849b 100644 --- a/testsuite/performance/tests/pom.xml +++ b/testsuite/performance/tests/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite performance - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/testsuite/pom.xml b/testsuite/pom.xml index 8508006b39f2..03a732eca42b 100755 --- a/testsuite/pom.xml +++ b/testsuite/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml 4.0.0 diff --git a/testsuite/utils/pom.xml b/testsuite/utils/pom.xml index e92e5ff2df74..268e2e3be059 100755 --- a/testsuite/utils/pom.xml +++ b/testsuite/utils/pom.xml @@ -21,7 +21,7 @@ keycloak-testsuite-pom org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/themes/pom.xml b/themes/pom.xml index cba6ecb0e29b..9c23d41fff31 100755 --- a/themes/pom.xml +++ b/themes/pom.xml @@ -4,7 +4,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 4.0.0 diff --git a/util/embedded-ldap/pom.xml b/util/embedded-ldap/pom.xml index 409d618a9e13..f789870dd381 100644 --- a/util/embedded-ldap/pom.xml +++ b/util/embedded-ldap/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../../pom.xml 4.0.0 diff --git a/util/pom.xml b/util/pom.xml index 6ec33bee6f01..f24d855fe1d0 100644 --- a/util/pom.xml +++ b/util/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 ../pom.xml diff --git a/wildfly/adduser/pom.xml b/wildfly/adduser/pom.xml index bd33ffc1420d..beb326d2f6cf 100755 --- a/wildfly/adduser/pom.xml +++ b/wildfly/adduser/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-wildfly-parent - 11.0.0 + 11.0.1 keycloak-wildfly-adduser diff --git a/wildfly/extensions/pom.xml b/wildfly/extensions/pom.xml index bc7843ca36da..90d8d7ce65cb 100755 --- a/wildfly/extensions/pom.xml +++ b/wildfly/extensions/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-wildfly-parent - 11.0.0 + 11.0.1 keycloak-wildfly-extensions diff --git a/wildfly/pom.xml b/wildfly/pom.xml index 51848cb896f7..17aa95e1718f 100755 --- a/wildfly/pom.xml +++ b/wildfly/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.0 + 11.0.1 Keycloak WildFly Integration diff --git a/wildfly/server-subsystem/pom.xml b/wildfly/server-subsystem/pom.xml index b1f5f31001d3..9a2e6c1b3859 100755 --- a/wildfly/server-subsystem/pom.xml +++ b/wildfly/server-subsystem/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-wildfly-parent - 11.0.0 + 11.0.1 keycloak-wildfly-server-subsystem From cfc0419016637a1d206c71f33d0af6c21301e0fd Mon Sep 17 00:00:00 2001 From: mhajas Date: Tue, 25 Aug 2020 16:05:16 +0200 Subject: [PATCH 15/30] KEYCLOAK-15259 Avoid using "null" Origin header as a valid value --- .../adapters/AuthenticatedActionsHandler.java | 4 +++- .../adapters/PreAuthActionsHandler.java | 4 ++-- .../org/keycloak/services/resources/Cors.java | 4 ++-- .../resources/account/AccountFormService.java | 2 +- .../account/AccountFormServiceTest.java | 8 +++++-- .../account/SessionRestServiceTest.java | 24 +++++++++++++++---- .../ResetCredentialsAlternativeFlowsTest.java | 15 +++++++----- 7 files changed, 42 insertions(+), 19 deletions(-) diff --git a/adapters/oidc/adapter-core/src/main/java/org/keycloak/adapters/AuthenticatedActionsHandler.java b/adapters/oidc/adapter-core/src/main/java/org/keycloak/adapters/AuthenticatedActionsHandler.java index 5840543d6627..057da2c69413 100755 --- a/adapters/oidc/adapter-core/src/main/java/org/keycloak/adapters/AuthenticatedActionsHandler.java +++ b/adapters/oidc/adapter-core/src/main/java/org/keycloak/adapters/AuthenticatedActionsHandler.java @@ -89,7 +89,8 @@ protected boolean abortTokenResponse() { return true; } // Don't allow a CORS request if we're not validating CORS requests. - if (!deployment.isCors() && facade.getRequest().getHeader(CorsHeaders.ORIGIN) != null) { + String origin = facade.getRequest().getHeader(CorsHeaders.ORIGIN); + if (!deployment.isCors() && origin != null && !origin.equals("null")) { facade.getResponse().setStatus(200); facade.getResponse().end(); return true; @@ -101,6 +102,7 @@ protected boolean corsRequest() { if (!deployment.isCors()) return false; KeycloakSecurityContext securityContext = facade.getSecurityContext(); String origin = facade.getRequest().getHeader(CorsHeaders.ORIGIN); + origin = "null".equals(origin) ? null : origin; String exposeHeaders = deployment.getCorsExposedHeaders(); if (deployment.getPolicyEnforcer() != null) { diff --git a/adapters/oidc/adapter-core/src/main/java/org/keycloak/adapters/PreAuthActionsHandler.java b/adapters/oidc/adapter-core/src/main/java/org/keycloak/adapters/PreAuthActionsHandler.java index f3c3c6abec97..42fdd90905bc 100755 --- a/adapters/oidc/adapter-core/src/main/java/org/keycloak/adapters/PreAuthActionsHandler.java +++ b/adapters/oidc/adapter-core/src/main/java/org/keycloak/adapters/PreAuthActionsHandler.java @@ -103,13 +103,13 @@ public boolean preflightCors() { if (!facade.getRequest().getMethod().equalsIgnoreCase("OPTIONS")) { return false; } - if (facade.getRequest().getHeader(CorsHeaders.ORIGIN) == null) { + String origin = facade.getRequest().getHeader(CorsHeaders.ORIGIN); + if (origin == null || origin.equals("null")) { log.debug("checkCorsPreflight: no origin header"); return false; } log.debug("Preflight request returning"); facade.getResponse().setStatus(200); - String origin = facade.getRequest().getHeader(CorsHeaders.ORIGIN); facade.getResponse().setHeader(CorsHeaders.ACCESS_CONTROL_ALLOW_ORIGIN, origin); facade.getResponse().setHeader(CorsHeaders.ACCESS_CONTROL_ALLOW_CREDENTIALS, "true"); String requestMethods = facade.getRequest().getHeader(CorsHeaders.ACCESS_CONTROL_REQUEST_METHOD); diff --git a/services/src/main/java/org/keycloak/services/resources/Cors.java b/services/src/main/java/org/keycloak/services/resources/Cors.java index 33c90e79f955..dd5431a8c568 100755 --- a/services/src/main/java/org/keycloak/services/resources/Cors.java +++ b/services/src/main/java/org/keycloak/services/resources/Cors.java @@ -137,7 +137,7 @@ public Cors exposedHeaders(String... exposedHeaders) { public Response build() { String origin = request.getHttpHeaders().getRequestHeaders().getFirst(ORIGIN_HEADER); - if (origin == null) { + if (origin == null || origin.equals("null")) { logger.trace("No origin header ignoring"); return builder.build(); } @@ -184,7 +184,7 @@ public Response build() { public void build(HttpResponse response) { String origin = request.getHttpHeaders().getRequestHeaders().getFirst(ORIGIN_HEADER); - if (origin == null) { + if (origin == null || origin.equals("null")) { logger.trace("No origin header ignoring"); return; } diff --git a/services/src/main/java/org/keycloak/services/resources/account/AccountFormService.java b/services/src/main/java/org/keycloak/services/resources/account/AccountFormService.java index a2f7932a4007..00d59006edd7 100755 --- a/services/src/main/java/org/keycloak/services/resources/account/AccountFormService.java +++ b/services/src/main/java/org/keycloak/services/resources/account/AccountFormService.java @@ -157,7 +157,7 @@ public void init() { String requestOrigin = UriUtils.getOrigin(session.getContext().getUri().getBaseUri()); String origin = headers.getRequestHeaders().getFirst("Origin"); - if (origin != null && !requestOrigin.equals(origin)) { + if (origin != null && !origin.equals("null") && !requestOrigin.equals(origin)) { throw new ForbiddenException(); } diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/account/AccountFormServiceTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/account/AccountFormServiceTest.java index 2b08f03daec9..65e59ef93a88 100755 --- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/account/AccountFormServiceTest.java +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/account/AccountFormServiceTest.java @@ -80,9 +80,13 @@ import org.hamcrest.Matchers; import org.junit.Assume; + +import static org.hamcrest.Matchers.anyOf; import static org.hamcrest.Matchers.containsInAnyOrder; import static org.hamcrest.Matchers.containsString; +import static org.hamcrest.Matchers.equalTo; import static org.hamcrest.Matchers.hasItems; +import static org.hamcrest.Matchers.hasSize; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertThat; @@ -1129,8 +1133,8 @@ public void sessions() { Assert.assertTrue(sessionsPage.isCurrent()); List> sessions = sessionsPage.getSessions(); - Assert.assertEquals(1, sessions.size()); - Assert.assertEquals("127.0.0.1", sessions.get(0).get(0)); + assertThat(sessions, hasSize(1)); + assertThat(sessions.get(0).get(0), anyOf(equalTo("127.0.0.1"), equalTo("0:0:0:0:0:0:0:1"))); // Create second session try { diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/account/SessionRestServiceTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/account/SessionRestServiceTest.java index 82e1d78a7b5c..9e9512ce24bf 100755 --- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/account/SessionRestServiceTest.java +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/account/SessionRestServiceTest.java @@ -16,10 +16,13 @@ */ package org.keycloak.testsuite.account; +import static org.hamcrest.Matchers.anyOf; +import static org.hamcrest.Matchers.equalTo; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertThat; import static org.junit.Assert.assertTrue; +import static org.junit.Assume.assumeTrue; import java.io.IOException; import java.util.List; @@ -132,18 +135,20 @@ public void testGetSessions() throws Exception { for (SessionRepresentation session : sessions) { assertNotNull(session.getId()); - assertEquals("127.0.0.1", session.getIpAddress()); + assertThat(session.getIpAddress(), anyOf(equalTo("127.0.0.1"), equalTo("0:0:0:0:0:0:0:1"))); assertTrue(session.getLastAccess() > 0); assertTrue(session.getExpires() > 0); assertTrue(session.getStarted() > 0); assertThat(session.getClients(), Matchers.hasItem(Matchers.hasProperty("clientId", - Matchers.anyOf(Matchers.is("direct-grant"), Matchers.is("public-client-0"))))); + anyOf(Matchers.is("direct-grant"), Matchers.is("public-client-0"))))); } } @Test @AuthServerContainerExclude(AuthServer.REMOTE) public void testGetDevicesResponse() throws Exception { + assumeTrue("Browser must be htmlunit. Otherwise we are not able to set desired BrowserHeaders", + System.getProperty("browser").equals("htmlUnit")); oauth.setBrowserHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0) Gecko/20100101 Firefox/15.0.1"); OAuthClient.AccessTokenResponse tokenResponse = codeGrant("public-client-0"); joinSsoSession("public-client-1"); @@ -168,14 +173,17 @@ public void testGetDevicesResponse() throws Exception { List clients = session.getClients(); assertEquals(2, clients.size()); assertThat(session.getClients(), Matchers.hasItem(Matchers.hasProperty("clientId", - Matchers.anyOf(Matchers.is("public-client-0"), Matchers.is("public-client-1"))))); + anyOf(Matchers.is("public-client-0"), Matchers.is("public-client-1"))))); assertThat(session.getClients(), Matchers.hasItem(Matchers.hasProperty("clientName", - Matchers.anyOf(Matchers.is("Public Client 0"), Matchers.is("Public Client 1"))))); + anyOf(Matchers.is("Public Client 0"), Matchers.is("Public Client 1"))))); } @Test public void testGetDevicesSessions() throws Exception { ContainerAssume.assumeAuthServerUndertow(); + assumeTrue("Browser must be htmlunit. Otherwise we are not able to set desired BrowserHeaders", + System.getProperty("browser").equals("htmlUnit")); + WebDriver firstBrowser = oauth.getDriver(); // first browser authenticates from Fedora @@ -343,6 +351,9 @@ public void testLogoutAll() throws IOException { @Test @AuthServerContainerExclude(AuthServer.REMOTE) public void testNullOrEmptyUserAgent() throws Exception { + assumeTrue("Browser must be htmlunit. Otherwise we are not able to set desired BrowserHeaders", + System.getProperty("browser").equals("htmlUnit")); + oauth.setBrowserHeader("User-Agent", null); OAuthClient.AccessTokenResponse tokenResponse = codeGrant("public-client-0"); @@ -367,6 +378,9 @@ public void testNullOrEmptyUserAgent() throws Exception { @Test public void testNonBrowserSession() throws Exception { + assumeTrue("Browser must be htmlunit. Otherwise we are not able to set desired BrowserHeaders", + System.getProperty("browser").equals("htmlUnit")); + // one device oauth.setBrowserHeader("User-Agent", "Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:15.0) Gecko/20100101 Firefox/15.0.1"); codeGrant("public-client-0"); @@ -382,7 +396,7 @@ public void testNonBrowserSession() throws Exception { assertEquals(2, devices.size()); assertThat(devices, - Matchers.hasItems(Matchers.hasProperty("os", Matchers.anyOf(Matchers.is("Fedora"), Matchers.is("Other"))))); + Matchers.hasItems(Matchers.hasProperty("os", anyOf(Matchers.is("Fedora"), Matchers.is("Other"))))); // three because tests use another client when booting tests assertEquals(3, devices.stream().filter(deviceRepresentation -> "Other".equals(deviceRepresentation.getOs())) diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/forms/ResetCredentialsAlternativeFlowsTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/forms/ResetCredentialsAlternativeFlowsTest.java index dbb4b510469d..50d643c3b012 100644 --- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/forms/ResetCredentialsAlternativeFlowsTest.java +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/forms/ResetCredentialsAlternativeFlowsTest.java @@ -18,6 +18,7 @@ package org.keycloak.testsuite.forms; +import org.hamcrest.Matchers; import org.jboss.arquillian.graphene.page.Page; import org.junit.Assert; import org.junit.Before; @@ -52,13 +53,17 @@ import org.keycloak.testsuite.util.MailUtils; import org.keycloak.testsuite.util.URLUtils; import org.keycloak.testsuite.util.UserBuilder; +import org.openqa.selenium.By; +import org.openqa.selenium.WebElement; import javax.mail.internet.MimeMessage; import java.util.Arrays; import java.util.List; import java.util.regex.Pattern; +import java.util.stream.Collectors; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertThat; import static org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude.AuthServer.REMOTE; /** @@ -434,8 +439,8 @@ public void deviceNameOptionalForFirstOTPCredentialButRequiredForEachNextOne() { pageSource = driver.getPageSource(); // Check if OTP credential with empty label was created successfully - final String emptyOtpLabelPresentInAuthenticatorTable = "(?s)"; - Assert.assertTrue(Pattern.compile(emptyOtpLabelPresentInAuthenticatorTable).matcher(pageSource).find()); + assertThat(driver.findElements(By.className("provider")).stream() + .map(WebElement::getText).collect(Collectors.toList()), Matchers.hasItem("")); accountTotpPage.removeTotp(); // Logout @@ -473,11 +478,9 @@ public void deviceNameOptionalForFirstOTPCredentialButRequiredForEachNextOne() { accountTotpPage.open(); Assert.assertTrue(accountTotpPage.isCurrent()); - // Get the updated Account TOTP page source post OTP credential creation - pageSource = driver.getPageSource(); - // Check if OTP credential with empty label was created successfully - Assert.assertTrue(Pattern.compile(emptyOtpLabelPresentInAuthenticatorTable).matcher(pageSource).find()); + assertThat(driver.findElements(By.className("provider")).stream() + .map(WebElement::getText).collect(Collectors.toList()), Matchers.hasItem(""));; // Logout oauth.openLogout(); From 5f2837def08daee8462cdb962391c34bc2167300 Mon Sep 17 00:00:00 2001 From: keycloak-bot Date: Mon, 31 Aug 2020 06:55:32 +0000 Subject: [PATCH 16/30] Set version to 11.0.2 --- adapters/oidc/adapter-core/pom.xml | 2 +- adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml | 2 +- adapters/oidc/as7-eap6/as7-adapter/pom.xml | 2 +- adapters/oidc/as7-eap6/as7-subsystem/pom.xml | 2 +- adapters/oidc/as7-eap6/pom.xml | 2 +- adapters/oidc/fuse7/camel-undertow/pom.xml | 2 +- adapters/oidc/fuse7/jetty94/pom.xml | 2 +- adapters/oidc/fuse7/pom.xml | 2 +- adapters/oidc/fuse7/tomcat8/pom.xml | 2 +- adapters/oidc/fuse7/undertow/pom.xml | 2 +- adapters/oidc/installed/pom.xml | 2 +- adapters/oidc/jaxrs-oauth-client/pom.xml | 2 +- adapters/oidc/jetty/jetty-core/pom.xml | 2 +- adapters/oidc/jetty/jetty9.2/pom.xml | 2 +- adapters/oidc/jetty/jetty9.3/pom.xml | 2 +- adapters/oidc/jetty/jetty9.4/pom.xml | 2 +- adapters/oidc/jetty/pom.xml | 2 +- adapters/oidc/js/pom.xml | 2 +- adapters/oidc/kcinit/pom.xml | 2 +- adapters/oidc/osgi-adapter/pom.xml | 2 +- adapters/oidc/pom.xml | 2 +- adapters/oidc/servlet-filter/pom.xml | 2 +- adapters/oidc/spring-boot-adapter-core/pom.xml | 2 +- adapters/oidc/spring-boot-container-bundle/pom.xml | 2 +- adapters/oidc/spring-boot-legacy-container-bundle/pom.xml | 2 +- adapters/oidc/spring-boot/pom.xml | 2 +- adapters/oidc/spring-boot2/pom.xml | 2 +- adapters/oidc/spring-security/pom.xml | 2 +- adapters/oidc/tomcat/pom.xml | 2 +- adapters/oidc/tomcat/tomcat-core/pom.xml | 2 +- adapters/oidc/tomcat/tomcat/pom.xml | 2 +- adapters/oidc/tomcat/tomcat7/pom.xml | 2 +- adapters/oidc/undertow/pom.xml | 2 +- adapters/oidc/wildfly-elytron/pom.xml | 2 +- adapters/oidc/wildfly/pom.xml | 2 +- adapters/oidc/wildfly/wildfly-adapter/pom.xml | 2 +- adapters/oidc/wildfly/wildfly-subsystem/pom.xml | 2 +- adapters/pom.xml | 2 +- adapters/saml/as7-eap6/adapter/pom.xml | 2 +- adapters/saml/as7-eap6/pom.xml | 2 +- adapters/saml/as7-eap6/subsystem/pom.xml | 2 +- adapters/saml/core-public/pom.xml | 2 +- adapters/saml/core/pom.xml | 2 +- adapters/saml/jetty/jetty-core/pom.xml | 2 +- adapters/saml/jetty/jetty9.2/pom.xml | 2 +- adapters/saml/jetty/jetty9.3/pom.xml | 2 +- adapters/saml/jetty/jetty9.4/pom.xml | 2 +- adapters/saml/jetty/pom.xml | 2 +- adapters/saml/pom.xml | 2 +- adapters/saml/servlet-filter/pom.xml | 2 +- adapters/saml/tomcat/pom.xml | 2 +- adapters/saml/tomcat/tomcat-core/pom.xml | 2 +- adapters/saml/tomcat/tomcat/pom.xml | 2 +- adapters/saml/tomcat/tomcat7/pom.xml | 2 +- adapters/saml/undertow/pom.xml | 2 +- adapters/saml/wildfly-elytron/pom.xml | 2 +- adapters/saml/wildfly/pom.xml | 2 +- adapters/saml/wildfly/wildfly-adapter/pom.xml | 2 +- adapters/saml/wildfly/wildfly-subsystem/pom.xml | 2 +- adapters/spi/adapter-spi/pom.xml | 2 +- adapters/spi/jboss-adapter-core/pom.xml | 2 +- adapters/spi/jetty-adapter-spi/pom.xml | 2 +- adapters/spi/pom.xml | 2 +- adapters/spi/servlet-adapter-spi/pom.xml | 2 +- adapters/spi/tomcat-adapter-spi/pom.xml | 2 +- adapters/spi/undertow-adapter-spi/pom.xml | 2 +- authz/client/pom.xml | 2 +- authz/policy/common/pom.xml | 2 +- authz/policy/pom.xml | 2 +- authz/pom.xml | 2 +- boms/adapter/pom.xml | 2 +- boms/misc/pom.xml | 2 +- boms/pom.xml | 2 +- boms/spi/pom.xml | 2 +- common/pom.xml | 2 +- core/pom.xml | 2 +- dependencies/pom.xml | 2 +- dependencies/server-all/pom.xml | 2 +- dependencies/server-min/pom.xml | 2 +- .../adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml | 2 +- distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml | 2 +- .../adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml | 2 +- distribution/adapters/as7-eap6-adapter/pom.xml | 2 +- distribution/adapters/fuse-adapter-zip/pom.xml | 2 +- distribution/adapters/jetty92-adapter-zip/pom.xml | 2 +- distribution/adapters/jetty93-adapter-zip/pom.xml | 2 +- distribution/adapters/jetty94-adapter-zip/pom.xml | 2 +- distribution/adapters/js-adapter-npm-zip/pom.xml | 2 +- distribution/adapters/js-adapter-zip/pom.xml | 2 +- distribution/adapters/osgi/features/pom.xml | 2 +- distribution/adapters/osgi/jaas/pom.xml | 2 +- distribution/adapters/osgi/pom.xml | 2 +- distribution/adapters/pom.xml | 2 +- distribution/adapters/tomcat-adapter-zip/pom.xml | 2 +- distribution/adapters/tomcat7-adapter-zip/pom.xml | 2 +- distribution/adapters/wildfly-adapter/pom.xml | 2 +- distribution/api-docs-dist/pom.xml | 2 +- distribution/downloads/pom.xml | 2 +- distribution/examples-dist/pom.xml | 2 +- distribution/feature-packs/adapter-feature-pack/pom.xml | 2 +- distribution/feature-packs/pom.xml | 2 +- distribution/feature-packs/server-feature-pack/pom.xml | 2 +- distribution/licenses-common/pom.xml | 2 +- distribution/maven-plugins/licenses-processor/pom.xml | 2 +- distribution/maven-plugins/pom.xml | 2 +- distribution/pom.xml | 2 +- .../saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml | 2 +- .../saml-adapters/as7-eap6-adapter/as7-modules/pom.xml | 2 +- .../saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/as7-eap6-adapter/pom.xml | 2 +- distribution/saml-adapters/jetty92-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/jetty93-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/jetty94-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/pom.xml | 2 +- distribution/saml-adapters/tomcat-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/tomcat7-adapter-zip/pom.xml | 2 +- distribution/saml-adapters/wildfly-adapter/pom.xml | 2 +- .../saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml | 2 +- .../saml-adapters/wildfly-adapter/wildfly-modules/pom.xml | 2 +- distribution/server-dist/pom.xml | 2 +- distribution/server-overlay/pom.xml | 2 +- distribution/server-x/pom.xml | 2 +- examples/admin-client/pom.xml | 2 +- examples/basic-auth/pom.xml | 2 +- examples/broker/facebook-authentication/pom.xml | 2 +- examples/broker/google-authentication/pom.xml | 2 +- examples/broker/pom.xml | 2 +- examples/broker/saml-broker-authentication/pom.xml | 2 +- examples/broker/twitter-authentication/pom.xml | 2 +- examples/cors/angular-product-app/pom.xml | 2 +- examples/cors/database-service/pom.xml | 2 +- examples/cors/pom.xml | 2 +- examples/demo-template/admin-access-app/pom.xml | 2 +- examples/demo-template/angular-product-app/pom.xml | 2 +- examples/demo-template/customer-app-cli/pom.xml | 2 +- examples/demo-template/customer-app-filter/pom.xml | 2 +- examples/demo-template/customer-app-js/pom.xml | 2 +- examples/demo-template/customer-app/pom.xml | 2 +- examples/demo-template/database-service/pom.xml | 2 +- examples/demo-template/example-ear/pom.xml | 2 +- examples/demo-template/offline-access-app/pom.xml | 2 +- examples/demo-template/pom.xml | 2 +- examples/demo-template/product-app/pom.xml | 2 +- examples/demo-template/service-account/pom.xml | 2 +- examples/js-console/pom.xml | 2 +- examples/kerberos/pom.xml | 2 +- examples/ldap/pom.xml | 2 +- examples/multi-tenant/pom.xml | 2 +- examples/pom.xml | 2 +- examples/providers/authenticator/pom.xml | 2 +- examples/providers/domain-extension/pom.xml | 2 +- examples/providers/pom.xml | 2 +- examples/providers/rest/pom.xml | 2 +- examples/saml/pom.xml | 2 +- examples/saml/post-with-encryption/pom.xml | 2 +- examples/saml/post-with-signature/pom.xml | 2 +- examples/saml/redirect-with-signature/pom.xml | 2 +- examples/saml/servlet-filter/pom.xml | 2 +- examples/themes/pom.xml | 2 +- federation/kerberos/pom.xml | 2 +- federation/ldap/pom.xml | 2 +- federation/pom.xml | 2 +- federation/sssd/pom.xml | 2 +- integration/admin-client/pom.xml | 2 +- integration/client-cli/admin-cli/pom.xml | 2 +- integration/client-cli/client-cli-dist/pom.xml | 2 +- integration/client-cli/client-registration-cli/pom.xml | 2 +- integration/client-cli/pom.xml | 2 +- integration/client-registration/pom.xml | 2 +- integration/pom.xml | 2 +- misc/keycloak-test-helper/pom.xml | 2 +- misc/pom.xml | 2 +- misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml | 2 +- misc/spring-boot-starter/pom.xml | 2 +- .../keycloak-legacy-spring-boot-starter/pom.xml | 2 +- misc/spring-legacy-boot-starter/pom.xml | 2 +- model/infinispan/pom.xml | 2 +- model/jpa/pom.xml | 2 +- model/map/pom.xml | 2 +- model/pom.xml | 2 +- pom.xml | 2 +- quarkus/deployment/pom.xml | 2 +- quarkus/pom.xml | 2 +- quarkus/runtime/pom.xml | 2 +- quarkus/server/pom.xml | 2 +- release-details | 4 ++-- saml-core-api/pom.xml | 2 +- saml-core/pom.xml | 2 +- server-spi-private/pom.xml | 2 +- server-spi/pom.xml | 2 +- services/pom.xml | 2 +- testsuite/db-allocator-plugin/pom.xml | 2 +- testsuite/integration-arquillian/pom.xml | 2 +- .../servers/app-server/app-server-spi/pom.xml | 2 +- .../servers/app-server/jboss/eap/pom.xml | 2 +- .../servers/app-server/jboss/eap6/pom.xml | 2 +- .../integration-arquillian/servers/app-server/jboss/pom.xml | 2 +- .../servers/app-server/jboss/relative/eap/pom.xml | 2 +- .../servers/app-server/jboss/relative/pom.xml | 2 +- .../servers/app-server/jboss/relative/wildfly/pom.xml | 2 +- .../servers/app-server/jboss/wildfly-deprecated/pom.xml | 2 +- .../servers/app-server/jboss/wildfly/pom.xml | 2 +- .../servers/app-server/jetty/92/pom.xml | 2 +- .../servers/app-server/jetty/93/pom.xml | 2 +- .../servers/app-server/jetty/94/pom.xml | 2 +- .../servers/app-server/jetty/common/pom.xml | 2 +- .../integration-arquillian/servers/app-server/jetty/pom.xml | 2 +- .../servers/app-server/karaf/fuse63/pom.xml | 2 +- .../servers/app-server/karaf/fuse7x/pom.xml | 2 +- .../integration-arquillian/servers/app-server/karaf/pom.xml | 2 +- testsuite/integration-arquillian/servers/app-server/pom.xml | 2 +- .../servers/app-server/tomcat/common/pom.xml | 2 +- .../integration-arquillian/servers/app-server/tomcat/pom.xml | 2 +- .../servers/app-server/tomcat/tomcat7/pom.xml | 2 +- .../servers/app-server/tomcat/tomcat8/pom.xml | 2 +- .../servers/app-server/tomcat/tomcat9/pom.xml | 2 +- .../servers/app-server/undertow/pom.xml | 2 +- .../servers/auth-server/jboss/eap/pom.xml | 2 +- .../servers/auth-server/jboss/legacy/pom.xml | 2 +- .../integration-arquillian/servers/auth-server/jboss/pom.xml | 2 +- .../servers/auth-server/jboss/wildfly/pom.xml | 2 +- testsuite/integration-arquillian/servers/auth-server/pom.xml | 2 +- .../servers/auth-server/quarkus/pom.xml | 2 +- .../servers/auth-server/services/pom.xml | 2 +- .../servers/auth-server/services/testsuite-providers/pom.xml | 2 +- .../servers/auth-server/undertow/pom.xml | 2 +- .../servers/cache-server/jboss/infinispan/pom.xml | 2 +- .../servers/cache-server/jboss/jdg/pom.xml | 2 +- .../integration-arquillian/servers/cache-server/jboss/pom.xml | 2 +- testsuite/integration-arquillian/servers/cache-server/pom.xml | 2 +- testsuite/integration-arquillian/servers/migration/pom.xml | 2 +- testsuite/integration-arquillian/servers/pom.xml | 2 +- .../integration-arquillian/test-apps/app-profile-jee/pom.xml | 2 +- .../test-apps/cors/angular-product/pom.xml | 2 +- .../test-apps/cors/database-service/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/cors/pom.xml | 2 +- .../test-apps/fuse/camel-fuse7-undertow/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml | 2 +- .../test-apps/fuse/customer-app-fuse/pom.xml | 2 +- .../test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml | 2 +- .../integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml | 2 +- .../test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml | 2 +- .../integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml | 2 +- .../test-apps/fuse/external-config/pom.xml | 2 +- .../integration-arquillian/test-apps/fuse/features/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/fuse/pom.xml | 2 +- .../test-apps/fuse/product-app-fuse/pom.xml | 2 +- .../test-apps/fuse/product-app-fuse7-undertow/pom.xml | 2 +- .../test-apps/hello-world-authz-service/pom.xml | 2 +- .../test-apps/photoz/photoz-html5-client/pom.xml | 2 +- .../test-apps/photoz/photoz-restful-api/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/photoz/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/pom.xml | 2 +- .../integration-arquillian/test-apps/servlet-authz/pom.xml | 2 +- .../test-apps/servlet-policy-enforcer/pom.xml | 2 +- testsuite/integration-arquillian/test-apps/servlets/pom.xml | 2 +- .../test-apps/spring-boot-adapter-app/pom.xml | 2 +- .../integration-arquillian/test-apps/test-apps-dist/pom.xml | 2 +- testsuite/integration-arquillian/tests/base/pom.xml | 2 +- .../integration-arquillian/tests/other/adapters/jboss/pom.xml | 2 +- .../tests/other/adapters/jboss/relative/eap/pom.xml | 2 +- .../tests/other/adapters/jboss/relative/pom.xml | 2 +- .../tests/other/adapters/jboss/relative/wildfly/pom.xml | 2 +- .../tests/other/adapters/jboss/remote/pom.xml | 2 +- .../tests/other/adapters/karaf/fuse61/pom.xml | 2 +- .../tests/other/adapters/karaf/fuse62/pom.xml | 2 +- .../tests/other/adapters/karaf/karaf3/pom.xml | 2 +- .../integration-arquillian/tests/other/adapters/karaf/pom.xml | 2 +- testsuite/integration-arquillian/tests/other/adapters/pom.xml | 2 +- .../integration-arquillian/tests/other/adapters/was/pom.xml | 2 +- .../tests/other/adapters/was/was8/pom.xml | 2 +- .../integration-arquillian/tests/other/adapters/wls/pom.xml | 2 +- .../tests/other/adapters/wls/wls12/pom.xml | 2 +- testsuite/integration-arquillian/tests/other/base-ui/pom.xml | 2 +- .../integration-arquillian/tests/other/clean-start/pom.xml | 2 +- testsuite/integration-arquillian/tests/other/console/pom.xml | 2 +- .../tests/other/jpa-performance/pom.xml | 2 +- .../tests/other/mod_auth_mellon/pom.xml | 2 +- testsuite/integration-arquillian/tests/other/pom.xml | 2 +- .../tests/other/server-config-migration/pom.xml | 2 +- .../tests/other/springboot-tests/pom.xml | 2 +- testsuite/integration-arquillian/tests/other/sssd/pom.xml | 2 +- testsuite/integration-arquillian/tests/pom.xml | 2 +- testsuite/integration-arquillian/util/pom.xml | 2 +- testsuite/performance/infinispan/pom.xml | 2 +- testsuite/performance/keycloak/pom.xml | 2 +- .../performance/load-balancer/wildfly-modcluster/pom.xml | 2 +- testsuite/performance/pom.xml | 2 +- testsuite/performance/tests/pom.xml | 2 +- testsuite/pom.xml | 2 +- testsuite/utils/pom.xml | 2 +- themes/pom.xml | 2 +- util/embedded-ldap/pom.xml | 2 +- util/pom.xml | 2 +- wildfly/adduser/pom.xml | 2 +- wildfly/extensions/pom.xml | 2 +- wildfly/pom.xml | 2 +- wildfly/server-subsystem/pom.xml | 2 +- 298 files changed, 299 insertions(+), 299 deletions(-) diff --git a/adapters/oidc/adapter-core/pom.xml b/adapters/oidc/adapter-core/pom.xml index 843622c0665a..da381ab917e1 100755 --- a/adapters/oidc/adapter-core/pom.xml +++ b/adapters/oidc/adapter-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml b/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml index 25eb3ee6e0b3..f08548eb6cfa 100755 --- a/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml +++ b/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-as7-integration-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/adapters/oidc/as7-eap6/as7-adapter/pom.xml b/adapters/oidc/as7-eap6/as7-adapter/pom.xml index 0d4883cb365a..1364d70b21c8 100755 --- a/adapters/oidc/as7-eap6/as7-adapter/pom.xml +++ b/adapters/oidc/as7-eap6/as7-adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-as7-integration-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/adapters/oidc/as7-eap6/as7-subsystem/pom.xml b/adapters/oidc/as7-eap6/as7-subsystem/pom.xml index 09924da6332f..460ef3bb60a1 100755 --- a/adapters/oidc/as7-eap6/as7-subsystem/pom.xml +++ b/adapters/oidc/as7-eap6/as7-subsystem/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-as7-integration-pom - 11.0.1 + 11.0.2 ../pom.xml diff --git a/adapters/oidc/as7-eap6/pom.xml b/adapters/oidc/as7-eap6/pom.xml index 064df10fa50d..6a2b0b856f87 100755 --- a/adapters/oidc/as7-eap6/pom.xml +++ b/adapters/oidc/as7-eap6/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml Keycloak AS7 / JBoss EAP 6 Integration diff --git a/adapters/oidc/fuse7/camel-undertow/pom.xml b/adapters/oidc/fuse7/camel-undertow/pom.xml index 8414053fbcfb..718dd6bbb8b8 100644 --- a/adapters/oidc/fuse7/camel-undertow/pom.xml +++ b/adapters/oidc/fuse7/camel-undertow/pom.xml @@ -21,7 +21,7 @@ keycloak-fuse7-integration-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/adapters/oidc/fuse7/jetty94/pom.xml b/adapters/oidc/fuse7/jetty94/pom.xml index 5857cb69e4e3..e1f132addd07 100644 --- a/adapters/oidc/fuse7/jetty94/pom.xml +++ b/adapters/oidc/fuse7/jetty94/pom.xml @@ -21,7 +21,7 @@ keycloak-fuse7-integration-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/adapters/oidc/fuse7/pom.xml b/adapters/oidc/fuse7/pom.xml index 6129f93b3d78..aee39019d8b2 100644 --- a/adapters/oidc/fuse7/pom.xml +++ b/adapters/oidc/fuse7/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/fuse7/tomcat8/pom.xml b/adapters/oidc/fuse7/tomcat8/pom.xml index 32b739ae016f..d92312cd2a32 100644 --- a/adapters/oidc/fuse7/tomcat8/pom.xml +++ b/adapters/oidc/fuse7/tomcat8/pom.xml @@ -21,7 +21,7 @@ keycloak-fuse7-integration-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/adapters/oidc/fuse7/undertow/pom.xml b/adapters/oidc/fuse7/undertow/pom.xml index 516d6c6401f8..a697273c2c9c 100644 --- a/adapters/oidc/fuse7/undertow/pom.xml +++ b/adapters/oidc/fuse7/undertow/pom.xml @@ -21,7 +21,7 @@ keycloak-fuse7-integration-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/adapters/oidc/installed/pom.xml b/adapters/oidc/installed/pom.xml index ab5bcb0b1d44..cf891d9c4763 100755 --- a/adapters/oidc/installed/pom.xml +++ b/adapters/oidc/installed/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jaxrs-oauth-client/pom.xml b/adapters/oidc/jaxrs-oauth-client/pom.xml index 11a0ab1361e4..b33626dc0eca 100755 --- a/adapters/oidc/jaxrs-oauth-client/pom.xml +++ b/adapters/oidc/jaxrs-oauth-client/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jetty/jetty-core/pom.xml b/adapters/oidc/jetty/jetty-core/pom.xml index c66dba0c9059..a8652779f997 100755 --- a/adapters/oidc/jetty/jetty-core/pom.xml +++ b/adapters/oidc/jetty/jetty-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jetty/jetty9.2/pom.xml b/adapters/oidc/jetty/jetty9.2/pom.xml index 090d417d9643..604bf95bc333 100755 --- a/adapters/oidc/jetty/jetty9.2/pom.xml +++ b/adapters/oidc/jetty/jetty9.2/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jetty/jetty9.3/pom.xml b/adapters/oidc/jetty/jetty9.3/pom.xml index 493d55ade8b6..4891aa401170 100644 --- a/adapters/oidc/jetty/jetty9.3/pom.xml +++ b/adapters/oidc/jetty/jetty9.3/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jetty/jetty9.4/pom.xml b/adapters/oidc/jetty/jetty9.4/pom.xml index 1c6135434a41..4527656b1124 100644 --- a/adapters/oidc/jetty/jetty9.4/pom.xml +++ b/adapters/oidc/jetty/jetty9.4/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml 4.0.0 diff --git a/adapters/oidc/jetty/pom.xml b/adapters/oidc/jetty/pom.xml index 28c6b1275bab..c723445df89a 100755 --- a/adapters/oidc/jetty/pom.xml +++ b/adapters/oidc/jetty/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml Keycloak Jetty Integration diff --git a/adapters/oidc/js/pom.xml b/adapters/oidc/js/pom.xml index 786ceacb32dc..1a0210e8f981 100755 --- a/adapters/oidc/js/pom.xml +++ b/adapters/oidc/js/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/kcinit/pom.xml b/adapters/oidc/kcinit/pom.xml index 1264475e807a..039bdece89e9 100755 --- a/adapters/oidc/kcinit/pom.xml +++ b/adapters/oidc/kcinit/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/osgi-adapter/pom.xml b/adapters/oidc/osgi-adapter/pom.xml index 879204b08ef5..d111ab35bed3 100755 --- a/adapters/oidc/osgi-adapter/pom.xml +++ b/adapters/oidc/osgi-adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/pom.xml b/adapters/oidc/pom.xml index 80e2490b9bf9..501ff8103ad1 100755 --- a/adapters/oidc/pom.xml +++ b/adapters/oidc/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../pom.xml Keycloak OIDC Client Adapter Modules diff --git a/adapters/oidc/servlet-filter/pom.xml b/adapters/oidc/servlet-filter/pom.xml index a5f4c5ed34ad..3eab33da3cb1 100755 --- a/adapters/oidc/servlet-filter/pom.xml +++ b/adapters/oidc/servlet-filter/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/spring-boot-adapter-core/pom.xml b/adapters/oidc/spring-boot-adapter-core/pom.xml index 461f8dad6a0e..614a40e77f8c 100755 --- a/adapters/oidc/spring-boot-adapter-core/pom.xml +++ b/adapters/oidc/spring-boot-adapter-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/spring-boot-container-bundle/pom.xml b/adapters/oidc/spring-boot-container-bundle/pom.xml index 0cf4382c6758..48a83c384c29 100644 --- a/adapters/oidc/spring-boot-container-bundle/pom.xml +++ b/adapters/oidc/spring-boot-container-bundle/pom.xml @@ -4,7 +4,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml spring-boot-container-bundle diff --git a/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml b/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml index 6b83c35531ab..81d0378955b1 100644 --- a/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml +++ b/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml @@ -4,7 +4,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml spring-boot-legacy-container-bundle diff --git a/adapters/oidc/spring-boot/pom.xml b/adapters/oidc/spring-boot/pom.xml index a111b599f05c..ae19e2dadf43 100755 --- a/adapters/oidc/spring-boot/pom.xml +++ b/adapters/oidc/spring-boot/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/spring-boot2/pom.xml b/adapters/oidc/spring-boot2/pom.xml index 3890ae4b93c0..7f5115da116b 100755 --- a/adapters/oidc/spring-boot2/pom.xml +++ b/adapters/oidc/spring-boot2/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/spring-security/pom.xml b/adapters/oidc/spring-security/pom.xml index c22a454bcea7..f019c1d8e4e6 100755 --- a/adapters/oidc/spring-security/pom.xml +++ b/adapters/oidc/spring-security/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/tomcat/pom.xml b/adapters/oidc/tomcat/pom.xml index 493d1837afed..0b89d5a67d07 100755 --- a/adapters/oidc/tomcat/pom.xml +++ b/adapters/oidc/tomcat/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml Keycloak Tomcat Integration diff --git a/adapters/oidc/tomcat/tomcat-core/pom.xml b/adapters/oidc/tomcat/tomcat-core/pom.xml index 6d6bac53ae70..d37f002d5171 100755 --- a/adapters/oidc/tomcat/tomcat-core/pom.xml +++ b/adapters/oidc/tomcat/tomcat-core/pom.xml @@ -21,7 +21,7 @@ keycloak-tomcat-integration-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/adapters/oidc/tomcat/tomcat/pom.xml b/adapters/oidc/tomcat/tomcat/pom.xml index bec8dbb96f7d..cb5dcbd7cd98 100755 --- a/adapters/oidc/tomcat/tomcat/pom.xml +++ b/adapters/oidc/tomcat/tomcat/pom.xml @@ -21,7 +21,7 @@ keycloak-tomcat-integration-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/adapters/oidc/tomcat/tomcat7/pom.xml b/adapters/oidc/tomcat/tomcat7/pom.xml index f6bc7885bfb8..c6471958bd76 100755 --- a/adapters/oidc/tomcat/tomcat7/pom.xml +++ b/adapters/oidc/tomcat/tomcat7/pom.xml @@ -21,7 +21,7 @@ keycloak-tomcat-integration-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/adapters/oidc/undertow/pom.xml b/adapters/oidc/undertow/pom.xml index 7f1845fa2164..717c53022af9 100755 --- a/adapters/oidc/undertow/pom.xml +++ b/adapters/oidc/undertow/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/wildfly-elytron/pom.xml b/adapters/oidc/wildfly-elytron/pom.xml index 762bb2d17fca..60b3ca9a233a 100755 --- a/adapters/oidc/wildfly-elytron/pom.xml +++ b/adapters/oidc/wildfly-elytron/pom.xml @@ -22,7 +22,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/oidc/wildfly/pom.xml b/adapters/oidc/wildfly/pom.xml index 3ae359b2c1fe..b205fc746d0d 100755 --- a/adapters/oidc/wildfly/pom.xml +++ b/adapters/oidc/wildfly/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml Keycloak WildFly Integration diff --git a/adapters/oidc/wildfly/wildfly-adapter/pom.xml b/adapters/oidc/wildfly/wildfly-adapter/pom.xml index 1c3f485b0ae9..45c57c339857 100644 --- a/adapters/oidc/wildfly/wildfly-adapter/pom.xml +++ b/adapters/oidc/wildfly/wildfly-adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml 4.0.0 diff --git a/adapters/oidc/wildfly/wildfly-subsystem/pom.xml b/adapters/oidc/wildfly/wildfly-subsystem/pom.xml index aaf79f1d5238..dc61465631a6 100755 --- a/adapters/oidc/wildfly/wildfly-subsystem/pom.xml +++ b/adapters/oidc/wildfly/wildfly-subsystem/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-parent - 11.0.1 + 11.0.2 ../../../../pom.xml diff --git a/adapters/pom.xml b/adapters/pom.xml index 2e25bae53245..5a2c8f735d31 100755 --- a/adapters/pom.xml +++ b/adapters/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml Keycloak Adapters diff --git a/adapters/saml/as7-eap6/adapter/pom.xml b/adapters/saml/as7-eap6/adapter/pom.xml index 2973173cd62a..d62c909e141d 100755 --- a/adapters/saml/as7-eap6/adapter/pom.xml +++ b/adapters/saml/as7-eap6/adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-saml-eap-integration-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/adapters/saml/as7-eap6/pom.xml b/adapters/saml/as7-eap6/pom.xml index 626b7a4fa2da..0d8d9475b43e 100755 --- a/adapters/saml/as7-eap6/pom.xml +++ b/adapters/saml/as7-eap6/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml Keycloak SAML EAP Integration diff --git a/adapters/saml/as7-eap6/subsystem/pom.xml b/adapters/saml/as7-eap6/subsystem/pom.xml index bfda340ae023..16e3450fbfe7 100755 --- a/adapters/saml/as7-eap6/subsystem/pom.xml +++ b/adapters/saml/as7-eap6/subsystem/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-saml-eap-integration-pom - 11.0.1 + 11.0.2 ../pom.xml diff --git a/adapters/saml/core-public/pom.xml b/adapters/saml/core-public/pom.xml index b4debde70798..9a47c2da2c71 100755 --- a/adapters/saml/core-public/pom.xml +++ b/adapters/saml/core-public/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/saml/core/pom.xml b/adapters/saml/core/pom.xml index bb6b313b08f8..70fabacb4bc2 100755 --- a/adapters/saml/core/pom.xml +++ b/adapters/saml/core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/saml/jetty/jetty-core/pom.xml b/adapters/saml/jetty/jetty-core/pom.xml index 97f5279383b2..57a03fe06d91 100755 --- a/adapters/saml/jetty/jetty-core/pom.xml +++ b/adapters/saml/jetty/jetty-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml 4.0.0 diff --git a/adapters/saml/jetty/jetty9.2/pom.xml b/adapters/saml/jetty/jetty9.2/pom.xml index bdf4cb51c39e..b21cf57d9c90 100755 --- a/adapters/saml/jetty/jetty9.2/pom.xml +++ b/adapters/saml/jetty/jetty9.2/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml 4.0.0 diff --git a/adapters/saml/jetty/jetty9.3/pom.xml b/adapters/saml/jetty/jetty9.3/pom.xml index 70a83eb90069..908bbe9c7b1f 100644 --- a/adapters/saml/jetty/jetty9.3/pom.xml +++ b/adapters/saml/jetty/jetty9.3/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml 4.0.0 diff --git a/adapters/saml/jetty/jetty9.4/pom.xml b/adapters/saml/jetty/jetty9.4/pom.xml index e1733f22aa2a..fc68ce91feeb 100644 --- a/adapters/saml/jetty/jetty9.4/pom.xml +++ b/adapters/saml/jetty/jetty9.4/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml 4.0.0 diff --git a/adapters/saml/jetty/pom.xml b/adapters/saml/jetty/pom.xml index 57ea0176f5da..342e10d7f35d 100755 --- a/adapters/saml/jetty/pom.xml +++ b/adapters/saml/jetty/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml Keycloak SAML Jetty Integration diff --git a/adapters/saml/pom.xml b/adapters/saml/pom.xml index 445a53d55dfe..9777c652df1f 100755 --- a/adapters/saml/pom.xml +++ b/adapters/saml/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../pom.xml Keycloak SAML Client Adapter Modules diff --git a/adapters/saml/servlet-filter/pom.xml b/adapters/saml/servlet-filter/pom.xml index d7cdf93db36c..affcb9680b94 100755 --- a/adapters/saml/servlet-filter/pom.xml +++ b/adapters/saml/servlet-filter/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/saml/tomcat/pom.xml b/adapters/saml/tomcat/pom.xml index d27173e9f5a9..2ea2192d0843 100755 --- a/adapters/saml/tomcat/pom.xml +++ b/adapters/saml/tomcat/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml Keycloak SAML Tomcat Integration diff --git a/adapters/saml/tomcat/tomcat-core/pom.xml b/adapters/saml/tomcat/tomcat-core/pom.xml index 5177f5e225c0..4920e8d003a9 100755 --- a/adapters/saml/tomcat/tomcat-core/pom.xml +++ b/adapters/saml/tomcat/tomcat-core/pom.xml @@ -21,7 +21,7 @@ keycloak-saml-tomcat-integration-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/adapters/saml/tomcat/tomcat/pom.xml b/adapters/saml/tomcat/tomcat/pom.xml index 1fa0ef1bfcfd..d22c84e2c460 100755 --- a/adapters/saml/tomcat/tomcat/pom.xml +++ b/adapters/saml/tomcat/tomcat/pom.xml @@ -21,7 +21,7 @@ keycloak-saml-tomcat-integration-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/adapters/saml/tomcat/tomcat7/pom.xml b/adapters/saml/tomcat/tomcat7/pom.xml index a17a57f97b9f..3fd72e49d872 100755 --- a/adapters/saml/tomcat/tomcat7/pom.xml +++ b/adapters/saml/tomcat/tomcat7/pom.xml @@ -21,7 +21,7 @@ keycloak-saml-tomcat-integration-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/adapters/saml/undertow/pom.xml b/adapters/saml/undertow/pom.xml index efecf6dcf62f..86e057f138ff 100755 --- a/adapters/saml/undertow/pom.xml +++ b/adapters/saml/undertow/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/saml/wildfly-elytron/pom.xml b/adapters/saml/wildfly-elytron/pom.xml index 0993311ef090..8c04b1824172 100755 --- a/adapters/saml/wildfly-elytron/pom.xml +++ b/adapters/saml/wildfly-elytron/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/saml/wildfly/pom.xml b/adapters/saml/wildfly/pom.xml index 6ff533f062f5..7f0db9d4cb68 100755 --- a/adapters/saml/wildfly/pom.xml +++ b/adapters/saml/wildfly/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml Keycloak SAML Wildfly Integration diff --git a/adapters/saml/wildfly/wildfly-adapter/pom.xml b/adapters/saml/wildfly/wildfly-adapter/pom.xml index c502ade24b14..b10bff7bc8cd 100755 --- a/adapters/saml/wildfly/wildfly-adapter/pom.xml +++ b/adapters/saml/wildfly/wildfly-adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml 4.0.0 diff --git a/adapters/saml/wildfly/wildfly-subsystem/pom.xml b/adapters/saml/wildfly/wildfly-subsystem/pom.xml index 68a9aa263044..6dbd0b818a9c 100755 --- a/adapters/saml/wildfly/wildfly-subsystem/pom.xml +++ b/adapters/saml/wildfly/wildfly-subsystem/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-parent - 11.0.1 + 11.0.2 ../../../../pom.xml diff --git a/adapters/spi/adapter-spi/pom.xml b/adapters/spi/adapter-spi/pom.xml index aa9aa7fffc99..9bea7e61f083 100755 --- a/adapters/spi/adapter-spi/pom.xml +++ b/adapters/spi/adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/spi/jboss-adapter-core/pom.xml b/adapters/spi/jboss-adapter-core/pom.xml index b1878b49a8ac..d629ae96285c 100755 --- a/adapters/spi/jboss-adapter-core/pom.xml +++ b/adapters/spi/jboss-adapter-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/spi/jetty-adapter-spi/pom.xml b/adapters/spi/jetty-adapter-spi/pom.xml index 4977ac00b17f..43ee69e3930d 100755 --- a/adapters/spi/jetty-adapter-spi/pom.xml +++ b/adapters/spi/jetty-adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/spi/pom.xml b/adapters/spi/pom.xml index 4ff779db57b3..370b8729fa40 100755 --- a/adapters/spi/pom.xml +++ b/adapters/spi/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../pom.xml Keycloak Client Adapter SPI Modules diff --git a/adapters/spi/servlet-adapter-spi/pom.xml b/adapters/spi/servlet-adapter-spi/pom.xml index 5a0f5ccab81e..d1f42b80478b 100755 --- a/adapters/spi/servlet-adapter-spi/pom.xml +++ b/adapters/spi/servlet-adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/spi/tomcat-adapter-spi/pom.xml b/adapters/spi/tomcat-adapter-spi/pom.xml index bd645bf8ea15..192bb8e4ac56 100755 --- a/adapters/spi/tomcat-adapter-spi/pom.xml +++ b/adapters/spi/tomcat-adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/adapters/spi/undertow-adapter-spi/pom.xml b/adapters/spi/undertow-adapter-spi/pom.xml index 7182d55dfe8e..2122b14f63c6 100755 --- a/adapters/spi/undertow-adapter-spi/pom.xml +++ b/adapters/spi/undertow-adapter-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml 4.0.0 diff --git a/authz/client/pom.xml b/authz/client/pom.xml index 1b8bdbbdd90f..29b5a87e07a1 100644 --- a/authz/client/pom.xml +++ b/authz/client/pom.xml @@ -7,7 +7,7 @@ org.keycloak keycloak-authz-parent - 11.0.1 + 11.0.2 ../pom.xml diff --git a/authz/policy/common/pom.xml b/authz/policy/common/pom.xml index 8545556a54b7..e044c8b4a37d 100644 --- a/authz/policy/common/pom.xml +++ b/authz/policy/common/pom.xml @@ -25,7 +25,7 @@ org.keycloak keycloak-authz-provider-parent - 11.0.1 + 11.0.2 ../pom.xml diff --git a/authz/policy/pom.xml b/authz/policy/pom.xml index a615af817dee..1600d8897281 100644 --- a/authz/policy/pom.xml +++ b/authz/policy/pom.xml @@ -7,7 +7,7 @@ org.keycloak keycloak-authz-parent - 11.0.1 + 11.0.2 ../pom.xml diff --git a/authz/pom.xml b/authz/pom.xml index 96f8620b79fe..7951b4b12c5c 100644 --- a/authz/pom.xml +++ b/authz/pom.xml @@ -7,7 +7,7 @@ org.keycloak keycloak-parent - 11.0.1 + 11.0.2 ../pom.xml diff --git a/boms/adapter/pom.xml b/boms/adapter/pom.xml index 9bdef512a969..58bef7e434a6 100644 --- a/boms/adapter/pom.xml +++ b/boms/adapter/pom.xml @@ -22,7 +22,7 @@ org.keycloak.bom keycloak-bom-parent - 11.0.1 + 11.0.2 org.keycloak.bom diff --git a/boms/misc/pom.xml b/boms/misc/pom.xml index 59b7b338f8d5..e03287a3d32f 100644 --- a/boms/misc/pom.xml +++ b/boms/misc/pom.xml @@ -22,7 +22,7 @@ org.keycloak.bom keycloak-bom-parent - 11.0.1 + 11.0.2 org.keycloak.bom diff --git a/boms/pom.xml b/boms/pom.xml index 8feb8583dec5..20af33ffe170 100644 --- a/boms/pom.xml +++ b/boms/pom.xml @@ -26,7 +26,7 @@ org.keycloak.bom keycloak-bom-parent - 11.0.1 + 11.0.2 pom diff --git a/boms/spi/pom.xml b/boms/spi/pom.xml index fe7016a88285..13b02ea5522e 100644 --- a/boms/spi/pom.xml +++ b/boms/spi/pom.xml @@ -23,7 +23,7 @@ org.keycloak.bom keycloak-bom-parent - 11.0.1 + 11.0.2 org.keycloak.bom diff --git a/common/pom.xml b/common/pom.xml index 766c1c426807..91ec0cc4cbfe 100755 --- a/common/pom.xml +++ b/common/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/core/pom.xml b/core/pom.xml index 353b8b7bfefa..2cdaa2a1afea 100755 --- a/core/pom.xml +++ b/core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/dependencies/pom.xml b/dependencies/pom.xml index 4ca4faee3a2e..45e4be5788a9 100755 --- a/dependencies/pom.xml +++ b/dependencies/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/dependencies/server-all/pom.xml b/dependencies/server-all/pom.xml index 0150944bdf52..5d1a93b5fca2 100755 --- a/dependencies/server-all/pom.xml +++ b/dependencies/server-all/pom.xml @@ -21,7 +21,7 @@ keycloak-dependencies-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/dependencies/server-min/pom.xml b/dependencies/server-min/pom.xml index 1c94faa21a4b..dc8306651a0b 100755 --- a/dependencies/server-min/pom.xml +++ b/dependencies/server-min/pom.xml @@ -21,7 +21,7 @@ keycloak-dependencies-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml b/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml index a67f426deafb..c70e5e5f805a 100755 --- a/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml +++ b/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml diff --git a/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml b/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml index 2860346dbe5d..bbc7deca337c 100755 --- a/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml +++ b/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml @@ -25,7 +25,7 @@ keycloak-as7-eap6-adapter-dist-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml diff --git a/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml b/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml index 723159c24c43..37f84f413d61 100755 --- a/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml +++ b/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-as7-eap6-adapter-dist-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml diff --git a/distribution/adapters/as7-eap6-adapter/pom.xml b/distribution/adapters/as7-eap6-adapter/pom.xml index aa324474a459..89b9d6f1be85 100644 --- a/distribution/adapters/as7-eap6-adapter/pom.xml +++ b/distribution/adapters/as7-eap6-adapter/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml Keycloak AS7 / JBoss EAP 6 Adapter Distros diff --git a/distribution/adapters/fuse-adapter-zip/pom.xml b/distribution/adapters/fuse-adapter-zip/pom.xml index 92d7ec8a62f7..c2b32799a8ef 100644 --- a/distribution/adapters/fuse-adapter-zip/pom.xml +++ b/distribution/adapters/fuse-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml diff --git a/distribution/adapters/jetty92-adapter-zip/pom.xml b/distribution/adapters/jetty92-adapter-zip/pom.xml index f391c49b8eb1..babf4bdc3ade 100755 --- a/distribution/adapters/jetty92-adapter-zip/pom.xml +++ b/distribution/adapters/jetty92-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml diff --git a/distribution/adapters/jetty93-adapter-zip/pom.xml b/distribution/adapters/jetty93-adapter-zip/pom.xml index cdbe3eb9c59e..1b9a744a557b 100644 --- a/distribution/adapters/jetty93-adapter-zip/pom.xml +++ b/distribution/adapters/jetty93-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml diff --git a/distribution/adapters/jetty94-adapter-zip/pom.xml b/distribution/adapters/jetty94-adapter-zip/pom.xml index 932b19864987..ede2fbafbe7d 100644 --- a/distribution/adapters/jetty94-adapter-zip/pom.xml +++ b/distribution/adapters/jetty94-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml diff --git a/distribution/adapters/js-adapter-npm-zip/pom.xml b/distribution/adapters/js-adapter-npm-zip/pom.xml index 488f1631383d..78296bccf26c 100755 --- a/distribution/adapters/js-adapter-npm-zip/pom.xml +++ b/distribution/adapters/js-adapter-npm-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml diff --git a/distribution/adapters/js-adapter-zip/pom.xml b/distribution/adapters/js-adapter-zip/pom.xml index f15e15a2d795..eac7861c80fe 100755 --- a/distribution/adapters/js-adapter-zip/pom.xml +++ b/distribution/adapters/js-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml diff --git a/distribution/adapters/osgi/features/pom.xml b/distribution/adapters/osgi/features/pom.xml index b0fc9ca01c44..cdaaa38cce4f 100755 --- a/distribution/adapters/osgi/features/pom.xml +++ b/distribution/adapters/osgi/features/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml Keycloak OSGI Features diff --git a/distribution/adapters/osgi/jaas/pom.xml b/distribution/adapters/osgi/jaas/pom.xml index db8ce6098762..8169f15bd45d 100755 --- a/distribution/adapters/osgi/jaas/pom.xml +++ b/distribution/adapters/osgi/jaas/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml Keycloak OSGI JAAS Realm Configuration diff --git a/distribution/adapters/osgi/pom.xml b/distribution/adapters/osgi/pom.xml index fc926b70dc70..b237ec9f9827 100755 --- a/distribution/adapters/osgi/pom.xml +++ b/distribution/adapters/osgi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml Keycloak OSGI Integration diff --git a/distribution/adapters/pom.xml b/distribution/adapters/pom.xml index b13ff97a8af8..70d9bafbbba9 100755 --- a/distribution/adapters/pom.xml +++ b/distribution/adapters/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-parent org.keycloak - 11.0.1 + 11.0.2 Adapters Distribution Parent diff --git a/distribution/adapters/tomcat-adapter-zip/pom.xml b/distribution/adapters/tomcat-adapter-zip/pom.xml index dbf145767123..e7678788390a 100755 --- a/distribution/adapters/tomcat-adapter-zip/pom.xml +++ b/distribution/adapters/tomcat-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml diff --git a/distribution/adapters/tomcat7-adapter-zip/pom.xml b/distribution/adapters/tomcat7-adapter-zip/pom.xml index e3055a09c86f..741ad84fc149 100755 --- a/distribution/adapters/tomcat7-adapter-zip/pom.xml +++ b/distribution/adapters/tomcat7-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml diff --git a/distribution/adapters/wildfly-adapter/pom.xml b/distribution/adapters/wildfly-adapter/pom.xml index b3e4777442a8..d40a529f9311 100644 --- a/distribution/adapters/wildfly-adapter/pom.xml +++ b/distribution/adapters/wildfly-adapter/pom.xml @@ -21,7 +21,7 @@ keycloak-adapters-distribution-parent org.keycloak - 11.0.1 + 11.0.2 keycloak-wildfly-adapter-dist diff --git a/distribution/api-docs-dist/pom.xml b/distribution/api-docs-dist/pom.xml index 6e0afe320165..63498b28fa79 100755 --- a/distribution/api-docs-dist/pom.xml +++ b/distribution/api-docs-dist/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.1 + 11.0.2 keycloak-api-docs-dist diff --git a/distribution/downloads/pom.xml b/distribution/downloads/pom.xml index 24143c2b2f76..983817e7ea35 100755 --- a/distribution/downloads/pom.xml +++ b/distribution/downloads/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.1 + 11.0.2 keycloak-dist-downloads diff --git a/distribution/examples-dist/pom.xml b/distribution/examples-dist/pom.xml index 2c89f1e71ca4..5b8610fb2a55 100755 --- a/distribution/examples-dist/pom.xml +++ b/distribution/examples-dist/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.1 + 11.0.2 keycloak-examples-dist diff --git a/distribution/feature-packs/adapter-feature-pack/pom.xml b/distribution/feature-packs/adapter-feature-pack/pom.xml index 51cdbfd1ff6d..38f4e4a1131b 100755 --- a/distribution/feature-packs/adapter-feature-pack/pom.xml +++ b/distribution/feature-packs/adapter-feature-pack/pom.xml @@ -19,7 +19,7 @@ org.keycloak feature-packs-parent - 11.0.1 + 11.0.2 4.0.0 diff --git a/distribution/feature-packs/pom.xml b/distribution/feature-packs/pom.xml index ed8b52756a28..8fe2fa8d6b96 100644 --- a/distribution/feature-packs/pom.xml +++ b/distribution/feature-packs/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-parent org.keycloak - 11.0.1 + 11.0.2 Feature Pack Builds diff --git a/distribution/feature-packs/server-feature-pack/pom.xml b/distribution/feature-packs/server-feature-pack/pom.xml index a4d7b47a7369..02cda32c5f34 100644 --- a/distribution/feature-packs/server-feature-pack/pom.xml +++ b/distribution/feature-packs/server-feature-pack/pom.xml @@ -19,7 +19,7 @@ org.keycloak feature-packs-parent - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/distribution/licenses-common/pom.xml b/distribution/licenses-common/pom.xml index 1fb3ac75eedb..cebb7a89a1e5 100644 --- a/distribution/licenses-common/pom.xml +++ b/distribution/licenses-common/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-parent org.keycloak - 11.0.1 + 11.0.2 keycloak-distribution-licenses-common diff --git a/distribution/maven-plugins/licenses-processor/pom.xml b/distribution/maven-plugins/licenses-processor/pom.xml index cd04dcf64b88..c6d364008705 100644 --- a/distribution/maven-plugins/licenses-processor/pom.xml +++ b/distribution/maven-plugins/licenses-processor/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-maven-plugins-parent org.keycloak - 11.0.1 + 11.0.2 keycloak-distribution-licenses-maven-plugin diff --git a/distribution/maven-plugins/pom.xml b/distribution/maven-plugins/pom.xml index 91dc6ff338cc..5707bc45cfab 100644 --- a/distribution/maven-plugins/pom.xml +++ b/distribution/maven-plugins/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-parent org.keycloak - 11.0.1 + 11.0.2 keycloak-distribution-maven-plugins-parent diff --git a/distribution/pom.xml b/distribution/pom.xml index 2dc97be4ff86..5774ed84523e 100755 --- a/distribution/pom.xml +++ b/distribution/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml diff --git a/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml index 81e7a34515df..887d1babc122 100755 --- a/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml +++ b/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml diff --git a/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml index 33693080fb4e..b624574f39c7 100755 --- a/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml +++ b/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml @@ -25,7 +25,7 @@ keycloak-saml-as7-eap6-adapter-dist-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml diff --git a/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml index 57fa971b28ee..9a02ccc49dd3 100755 --- a/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml +++ b/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-saml-as7-eap6-adapter-dist-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml diff --git a/distribution/saml-adapters/as7-eap6-adapter/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/pom.xml index 4bbfce3d8d86..614ccc69de06 100755 --- a/distribution/saml-adapters/as7-eap6-adapter/pom.xml +++ b/distribution/saml-adapters/as7-eap6-adapter/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml Keycloak SAML AS7 / JBoss EAP 6 Adapter Distros diff --git a/distribution/saml-adapters/jetty92-adapter-zip/pom.xml b/distribution/saml-adapters/jetty92-adapter-zip/pom.xml index 154d0f15a4e1..531049bf9202 100755 --- a/distribution/saml-adapters/jetty92-adapter-zip/pom.xml +++ b/distribution/saml-adapters/jetty92-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml diff --git a/distribution/saml-adapters/jetty93-adapter-zip/pom.xml b/distribution/saml-adapters/jetty93-adapter-zip/pom.xml index d7c7e9469be5..10a37416cf4f 100644 --- a/distribution/saml-adapters/jetty93-adapter-zip/pom.xml +++ b/distribution/saml-adapters/jetty93-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml diff --git a/distribution/saml-adapters/jetty94-adapter-zip/pom.xml b/distribution/saml-adapters/jetty94-adapter-zip/pom.xml index 2352ec2290c3..70d525cd7f33 100644 --- a/distribution/saml-adapters/jetty94-adapter-zip/pom.xml +++ b/distribution/saml-adapters/jetty94-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml diff --git a/distribution/saml-adapters/pom.xml b/distribution/saml-adapters/pom.xml index 0701c7719a22..18bdd937987d 100755 --- a/distribution/saml-adapters/pom.xml +++ b/distribution/saml-adapters/pom.xml @@ -20,7 +20,7 @@ keycloak-distribution-parent org.keycloak - 11.0.1 + 11.0.2 SAML Adapters Distribution Parent diff --git a/distribution/saml-adapters/tomcat-adapter-zip/pom.xml b/distribution/saml-adapters/tomcat-adapter-zip/pom.xml index 54c4be0e18ba..ef432ba7e2d1 100755 --- a/distribution/saml-adapters/tomcat-adapter-zip/pom.xml +++ b/distribution/saml-adapters/tomcat-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml diff --git a/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml b/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml index 7bbfcce7d7ca..660669a70790 100755 --- a/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml +++ b/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml diff --git a/distribution/saml-adapters/wildfly-adapter/pom.xml b/distribution/saml-adapters/wildfly-adapter/pom.xml index 9bbe63aab798..d6e095c6e6da 100755 --- a/distribution/saml-adapters/wildfly-adapter/pom.xml +++ b/distribution/saml-adapters/wildfly-adapter/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../pom.xml Keycloak Wildfly SAML Adapter diff --git a/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml b/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml index 8e358f731120..0113ee36cf16 100755 --- a/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml +++ b/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml diff --git a/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml b/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml index 1debbca3f69f..3c4cab15f6f5 100755 --- a/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml +++ b/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml @@ -25,7 +25,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../../../pom.xml diff --git a/distribution/server-dist/pom.xml b/distribution/server-dist/pom.xml index db5c93e0081c..7ea0da79eba7 100755 --- a/distribution/server-dist/pom.xml +++ b/distribution/server-dist/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.1 + 11.0.2 keycloak-server-dist diff --git a/distribution/server-overlay/pom.xml b/distribution/server-overlay/pom.xml index cd9dbf3280bd..b587ab412f24 100755 --- a/distribution/server-overlay/pom.xml +++ b/distribution/server-overlay/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.1 + 11.0.2 keycloak-server-overlay diff --git a/distribution/server-x/pom.xml b/distribution/server-x/pom.xml index 04e63a5b4a7c..18ca4dc1161b 100755 --- a/distribution/server-x/pom.xml +++ b/distribution/server-x/pom.xml @@ -21,7 +21,7 @@ keycloak-distribution-parent org.keycloak - 11.0.1 + 11.0.2 keycloak-server-x diff --git a/examples/admin-client/pom.xml b/examples/admin-client/pom.xml index 38c316d237da..8abbd7d820de 100755 --- a/examples/admin-client/pom.xml +++ b/examples/admin-client/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-parent org.keycloak - 11.0.1 + 11.0.2 Keycloak Examples - Admin Client diff --git a/examples/basic-auth/pom.xml b/examples/basic-auth/pom.xml index a3ff21d0aad6..6e05c9df2918 100755 --- a/examples/basic-auth/pom.xml +++ b/examples/basic-auth/pom.xml @@ -23,7 +23,7 @@ keycloak-examples-parent org.keycloak - 11.0.1 + 11.0.2 Keycloak Examples - Basic Auth diff --git a/examples/broker/facebook-authentication/pom.xml b/examples/broker/facebook-authentication/pom.xml index 71a9ac6048c0..2538d4be7f90 100755 --- a/examples/broker/facebook-authentication/pom.xml +++ b/examples/broker/facebook-authentication/pom.xml @@ -23,7 +23,7 @@ keycloak-examples-broker-parent org.keycloak - 11.0.1 + 11.0.2 Keycloak Broker Examples - Facebook Authentication diff --git a/examples/broker/google-authentication/pom.xml b/examples/broker/google-authentication/pom.xml index c10e911dfc78..8835da7eefd1 100755 --- a/examples/broker/google-authentication/pom.xml +++ b/examples/broker/google-authentication/pom.xml @@ -23,7 +23,7 @@ keycloak-examples-broker-parent org.keycloak - 11.0.1 + 11.0.2 Keycloak Broker Examples - Google Authentication diff --git a/examples/broker/pom.xml b/examples/broker/pom.xml index de38b699c57f..1deb5b6da49f 100755 --- a/examples/broker/pom.xml +++ b/examples/broker/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-parent org.keycloak - 11.0.1 + 11.0.2 Broker Examples diff --git a/examples/broker/saml-broker-authentication/pom.xml b/examples/broker/saml-broker-authentication/pom.xml index 2acc05e60ec6..82ad13bb064c 100755 --- a/examples/broker/saml-broker-authentication/pom.xml +++ b/examples/broker/saml-broker-authentication/pom.xml @@ -23,7 +23,7 @@ keycloak-examples-broker-parent org.keycloak - 11.0.1 + 11.0.2 Keycloak Broker Examples - SAML Identity Provider Brokering diff --git a/examples/broker/twitter-authentication/pom.xml b/examples/broker/twitter-authentication/pom.xml index 597d807b0179..c8a65213bc4d 100755 --- a/examples/broker/twitter-authentication/pom.xml +++ b/examples/broker/twitter-authentication/pom.xml @@ -23,7 +23,7 @@ keycloak-examples-broker-parent org.keycloak - 11.0.1 + 11.0.2 Keycloak Broker Examples - Twitter Authentication diff --git a/examples/cors/angular-product-app/pom.xml b/examples/cors/angular-product-app/pom.xml index a0dd2eb543eb..1ea743148121 100755 --- a/examples/cors/angular-product-app/pom.xml +++ b/examples/cors/angular-product-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-cors-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/examples/cors/database-service/pom.xml b/examples/cors/database-service/pom.xml index eb025bd7ae9f..d29f5154c278 100755 --- a/examples/cors/database-service/pom.xml +++ b/examples/cors/database-service/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-cors-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/examples/cors/pom.xml b/examples/cors/pom.xml index 99c66e9bfbd2..c2328da54a4a 100755 --- a/examples/cors/pom.xml +++ b/examples/cors/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-parent org.keycloak - 11.0.1 + 11.0.2 Keycloak Examples - CORS diff --git a/examples/demo-template/admin-access-app/pom.xml b/examples/demo-template/admin-access-app/pom.xml index dc37afeef7b5..95317f72b217 100755 --- a/examples/demo-template/admin-access-app/pom.xml +++ b/examples/demo-template/admin-access-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/examples/demo-template/angular-product-app/pom.xml b/examples/demo-template/angular-product-app/pom.xml index 7f2a26b4bf76..be9119d6f990 100755 --- a/examples/demo-template/angular-product-app/pom.xml +++ b/examples/demo-template/angular-product-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/examples/demo-template/customer-app-cli/pom.xml b/examples/demo-template/customer-app-cli/pom.xml index 279535ec9b7e..868226486f2d 100755 --- a/examples/demo-template/customer-app-cli/pom.xml +++ b/examples/demo-template/customer-app-cli/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/examples/demo-template/customer-app-filter/pom.xml b/examples/demo-template/customer-app-filter/pom.xml index e325a6e78c28..b7d75d6ef59f 100755 --- a/examples/demo-template/customer-app-filter/pom.xml +++ b/examples/demo-template/customer-app-filter/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/examples/demo-template/customer-app-js/pom.xml b/examples/demo-template/customer-app-js/pom.xml index bf6f065a6e89..cf7bdac9980a 100755 --- a/examples/demo-template/customer-app-js/pom.xml +++ b/examples/demo-template/customer-app-js/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/examples/demo-template/customer-app/pom.xml b/examples/demo-template/customer-app/pom.xml index db9901d228ff..348df36e4a99 100755 --- a/examples/demo-template/customer-app/pom.xml +++ b/examples/demo-template/customer-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/examples/demo-template/database-service/pom.xml b/examples/demo-template/database-service/pom.xml index 21ea28e7ad70..e7dd64cd7c14 100755 --- a/examples/demo-template/database-service/pom.xml +++ b/examples/demo-template/database-service/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/examples/demo-template/example-ear/pom.xml b/examples/demo-template/example-ear/pom.xml index 309564bb6255..ae49cd1bb77f 100755 --- a/examples/demo-template/example-ear/pom.xml +++ b/examples/demo-template/example-ear/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/examples/demo-template/offline-access-app/pom.xml b/examples/demo-template/offline-access-app/pom.xml index 7ce18518868c..b0663bb6e7b9 100755 --- a/examples/demo-template/offline-access-app/pom.xml +++ b/examples/demo-template/offline-access-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/examples/demo-template/pom.xml b/examples/demo-template/pom.xml index 687de04b5705..fce2b7d6d378 100755 --- a/examples/demo-template/pom.xml +++ b/examples/demo-template/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-parent org.keycloak - 11.0.1 + 11.0.2 Demo Examples diff --git a/examples/demo-template/product-app/pom.xml b/examples/demo-template/product-app/pom.xml index 757925cc9165..84aebfc5eb0d 100755 --- a/examples/demo-template/product-app/pom.xml +++ b/examples/demo-template/product-app/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/examples/demo-template/service-account/pom.xml b/examples/demo-template/service-account/pom.xml index 922411790722..5bde5100eee8 100755 --- a/examples/demo-template/service-account/pom.xml +++ b/examples/demo-template/service-account/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-demo-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/examples/js-console/pom.xml b/examples/js-console/pom.xml index bbffa244f961..0ab30e5dd01c 100755 --- a/examples/js-console/pom.xml +++ b/examples/js-console/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/examples/kerberos/pom.xml b/examples/kerberos/pom.xml index af915f89558e..52ca2833d3da 100755 --- a/examples/kerberos/pom.xml +++ b/examples/kerberos/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-parent org.keycloak - 11.0.1 + 11.0.2 Keycloak Examples - Kerberos Credential Delegation diff --git a/examples/ldap/pom.xml b/examples/ldap/pom.xml index 219f6446dfa6..8a54411f1817 100644 --- a/examples/ldap/pom.xml +++ b/examples/ldap/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/examples/multi-tenant/pom.xml b/examples/multi-tenant/pom.xml index a92e03261865..b2b9101bbef4 100755 --- a/examples/multi-tenant/pom.xml +++ b/examples/multi-tenant/pom.xml @@ -21,7 +21,7 @@ keycloak-examples-parent org.keycloak - 11.0.1 + 11.0.2 Keycloak Examples - Multi Tenant diff --git a/examples/pom.xml b/examples/pom.xml index 77c31cf1a2e4..3a04f544b6cb 100755 --- a/examples/pom.xml +++ b/examples/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 Keycloak Examples diff --git a/examples/providers/authenticator/pom.xml b/examples/providers/authenticator/pom.xml index ba66d4b4dfed..5a1b577d040e 100755 --- a/examples/providers/authenticator/pom.xml +++ b/examples/providers/authenticator/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-providers-parent org.keycloak - 11.0.1 + 11.0.2 Authenticator Example diff --git a/examples/providers/domain-extension/pom.xml b/examples/providers/domain-extension/pom.xml index 4e1e157ddffd..f47f26683861 100755 --- a/examples/providers/domain-extension/pom.xml +++ b/examples/providers/domain-extension/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-providers-parent org.keycloak - 11.0.1 + 11.0.2 Domain Extension Example diff --git a/examples/providers/pom.xml b/examples/providers/pom.xml index 6c4eafcca53c..65ed90460ba8 100755 --- a/examples/providers/pom.xml +++ b/examples/providers/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-parent org.keycloak - 11.0.1 + 11.0.2 Provider Examples diff --git a/examples/providers/rest/pom.xml b/examples/providers/rest/pom.xml index 09b8db5f3e3f..0e3269535601 100755 --- a/examples/providers/rest/pom.xml +++ b/examples/providers/rest/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-providers-parent org.keycloak - 11.0.1 + 11.0.2 REST Example diff --git a/examples/saml/pom.xml b/examples/saml/pom.xml index c35073984d1a..acf98c5ecac1 100755 --- a/examples/saml/pom.xml +++ b/examples/saml/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-parent org.keycloak - 11.0.1 + 11.0.2 SAML Examples diff --git a/examples/saml/post-with-encryption/pom.xml b/examples/saml/post-with-encryption/pom.xml index 359688b66d57..c398409f1da9 100755 --- a/examples/saml/post-with-encryption/pom.xml +++ b/examples/saml/post-with-encryption/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-saml-parent org.keycloak - 11.0.1 + 11.0.2 saml-post-encryption diff --git a/examples/saml/post-with-signature/pom.xml b/examples/saml/post-with-signature/pom.xml index 4f8228371a5d..4cebaf1acae5 100755 --- a/examples/saml/post-with-signature/pom.xml +++ b/examples/saml/post-with-signature/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-saml-parent org.keycloak - 11.0.1 + 11.0.2 sales-post-sig diff --git a/examples/saml/redirect-with-signature/pom.xml b/examples/saml/redirect-with-signature/pom.xml index 0855152c43ff..3b36c805fdad 100755 --- a/examples/saml/redirect-with-signature/pom.xml +++ b/examples/saml/redirect-with-signature/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-saml-parent org.keycloak - 11.0.1 + 11.0.2 saml-redirect-signatures diff --git a/examples/saml/servlet-filter/pom.xml b/examples/saml/servlet-filter/pom.xml index 2aab53b22d4a..51d7c8d55620 100755 --- a/examples/saml/servlet-filter/pom.xml +++ b/examples/saml/servlet-filter/pom.xml @@ -22,7 +22,7 @@ keycloak-examples-saml-parent org.keycloak - 11.0.1 + 11.0.2 saml-servlet-filter diff --git a/examples/themes/pom.xml b/examples/themes/pom.xml index 028011a3d9ca..712e15330224 100755 --- a/examples/themes/pom.xml +++ b/examples/themes/pom.xml @@ -20,7 +20,7 @@ keycloak-examples-parent org.keycloak - 11.0.1 + 11.0.2 Themes Examples diff --git a/federation/kerberos/pom.xml b/federation/kerberos/pom.xml index efb500a8ea23..e72fe56f1310 100755 --- a/federation/kerberos/pom.xml +++ b/federation/kerberos/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../pom.xml 4.0.0 diff --git a/federation/ldap/pom.xml b/federation/ldap/pom.xml index b15f189f9dd2..e7647f09ffe7 100755 --- a/federation/ldap/pom.xml +++ b/federation/ldap/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../pom.xml 4.0.0 diff --git a/federation/pom.xml b/federation/pom.xml index 59ef5f7d85fc..4aed73da6415 100755 --- a/federation/pom.xml +++ b/federation/pom.xml @@ -22,7 +22,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/federation/sssd/pom.xml b/federation/sssd/pom.xml index 9141961aec2f..22f441baec49 100644 --- a/federation/sssd/pom.xml +++ b/federation/sssd/pom.xml @@ -4,7 +4,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../pom.xml 4.0.0 diff --git a/integration/admin-client/pom.xml b/integration/admin-client/pom.xml index ccae90aab014..ff8144842c71 100755 --- a/integration/admin-client/pom.xml +++ b/integration/admin-client/pom.xml @@ -22,7 +22,7 @@ keycloak-integration-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/integration/client-cli/admin-cli/pom.xml b/integration/client-cli/admin-cli/pom.xml index 7f83fec65857..5f8e4800bff0 100755 --- a/integration/client-cli/admin-cli/pom.xml +++ b/integration/client-cli/admin-cli/pom.xml @@ -21,7 +21,7 @@ keycloak-client-cli-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/integration/client-cli/client-cli-dist/pom.xml b/integration/client-cli/client-cli-dist/pom.xml index 11eaeb127277..e0ab1f97eaed 100755 --- a/integration/client-cli/client-cli-dist/pom.xml +++ b/integration/client-cli/client-cli-dist/pom.xml @@ -21,7 +21,7 @@ keycloak-client-cli-parent org.keycloak - 11.0.1 + 11.0.2 keycloak-client-cli-dist diff --git a/integration/client-cli/client-registration-cli/pom.xml b/integration/client-cli/client-registration-cli/pom.xml index 308c473b9c19..cf5270dbea47 100755 --- a/integration/client-cli/client-registration-cli/pom.xml +++ b/integration/client-cli/client-registration-cli/pom.xml @@ -21,7 +21,7 @@ keycloak-client-cli-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/integration/client-cli/pom.xml b/integration/client-cli/pom.xml index 901fb6bd350c..b1b6cef065c0 100644 --- a/integration/client-cli/pom.xml +++ b/integration/client-cli/pom.xml @@ -20,7 +20,7 @@ keycloak-integration-parent org.keycloak - 11.0.1 + 11.0.2 Keycloak Client CLI diff --git a/integration/client-registration/pom.xml b/integration/client-registration/pom.xml index 16ec963c88b6..137d20dab913 100755 --- a/integration/client-registration/pom.xml +++ b/integration/client-registration/pom.xml @@ -21,7 +21,7 @@ keycloak-integration-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/integration/pom.xml b/integration/pom.xml index e13ea5ff5088..8997fd0c45b5 100755 --- a/integration/pom.xml +++ b/integration/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml Keycloak Integration diff --git a/misc/keycloak-test-helper/pom.xml b/misc/keycloak-test-helper/pom.xml index b980cea6531f..82cd4a202344 100644 --- a/misc/keycloak-test-helper/pom.xml +++ b/misc/keycloak-test-helper/pom.xml @@ -6,7 +6,7 @@ keycloak-misc-parent org.keycloak - 11.0.1 + 11.0.2 org.keycloak keycloak-test-helper diff --git a/misc/pom.xml b/misc/pom.xml index 22ccf45dffe2..4019a88ed0f3 100644 --- a/misc/pom.xml +++ b/misc/pom.xml @@ -3,7 +3,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 Keycloak Misc diff --git a/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml b/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml index cfd6ada0357d..30909edb44a5 100644 --- a/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml +++ b/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml @@ -4,7 +4,7 @@ org.keycloak keycloak-spring-boot-starter-parent - 11.0.1 + 11.0.2 keycloak-spring-boot-starter Keycloak :: Spring :: Boot :: Default :: Starter diff --git a/misc/spring-boot-starter/pom.xml b/misc/spring-boot-starter/pom.xml index f936a996b325..8b3e7b258d67 100644 --- a/misc/spring-boot-starter/pom.xml +++ b/misc/spring-boot-starter/pom.xml @@ -5,7 +5,7 @@ keycloak-misc-parent org.keycloak - 11.0.1 + 11.0.2 org.keycloak keycloak-spring-boot-starter-parent diff --git a/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml b/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml index 0e459a1ca102..e60c23e537a6 100644 --- a/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml +++ b/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml @@ -4,7 +4,7 @@ org.keycloak keycloak-legacy-spring-boot-starter-parent - 11.0.1 + 11.0.2 keycloak-legacy-spring-boot-starter Keycloak :: Legacy :: Spring :: Boot :: Default :: Starter diff --git a/misc/spring-legacy-boot-starter/pom.xml b/misc/spring-legacy-boot-starter/pom.xml index 6bc7dbcfc53a..2cf434001a0a 100644 --- a/misc/spring-legacy-boot-starter/pom.xml +++ b/misc/spring-legacy-boot-starter/pom.xml @@ -5,7 +5,7 @@ keycloak-misc-parent org.keycloak - 11.0.1 + 11.0.2 org.keycloak keycloak-legacy-spring-boot-starter-parent diff --git a/model/infinispan/pom.xml b/model/infinispan/pom.xml index df47a544b9ef..766e6c07c956 100755 --- a/model/infinispan/pom.xml +++ b/model/infinispan/pom.xml @@ -21,7 +21,7 @@ keycloak-model-pom org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/model/jpa/pom.xml b/model/jpa/pom.xml index 82c44395dd29..f971f392fe7f 100755 --- a/model/jpa/pom.xml +++ b/model/jpa/pom.xml @@ -21,7 +21,7 @@ keycloak-model-pom org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/model/map/pom.xml b/model/map/pom.xml index c68a4558a547..f35862328394 100644 --- a/model/map/pom.xml +++ b/model/map/pom.xml @@ -3,7 +3,7 @@ keycloak-model-pom org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/model/pom.xml b/model/pom.xml index 3e8bab55b6b4..38ed11729098 100755 --- a/model/pom.xml +++ b/model/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml Keycloak Model Parent diff --git a/pom.xml b/pom.xml index baf5c787bca3..f21a51aabc0f 100755 --- a/pom.xml +++ b/pom.xml @@ -31,7 +31,7 @@ org.keycloak keycloak-parent - 11.0.1 + 11.0.2 pom diff --git a/quarkus/deployment/pom.xml b/quarkus/deployment/pom.xml index 3b8e615c2125..0eccc48311bf 100644 --- a/quarkus/deployment/pom.xml +++ b/quarkus/deployment/pom.xml @@ -5,7 +5,7 @@ keycloak-quarkus-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/quarkus/pom.xml b/quarkus/pom.xml index 2acc3d1ad647..3c3d9dc89573 100755 --- a/quarkus/pom.xml +++ b/quarkus/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml Keycloak Quarkus Parent diff --git a/quarkus/runtime/pom.xml b/quarkus/runtime/pom.xml index b10f1d10a2a5..dbf3f70a43cc 100644 --- a/quarkus/runtime/pom.xml +++ b/quarkus/runtime/pom.xml @@ -5,7 +5,7 @@ keycloak-quarkus-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/quarkus/server/pom.xml b/quarkus/server/pom.xml index 84dd339625b3..70d4716d289a 100644 --- a/quarkus/server/pom.xml +++ b/quarkus/server/pom.xml @@ -7,7 +7,7 @@ keycloak-quarkus-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml diff --git a/release-details b/release-details index 613dd654cf3d..b3f3f8049587 100644 --- a/release-details +++ b/release-details @@ -1,3 +1,3 @@ -VERSION=11.0.1 +VERSION=11.0.2 SHORT_VERSION=11.0 -NPM_VERSION=11.0.1 +NPM_VERSION=11.0.2 diff --git a/saml-core-api/pom.xml b/saml-core-api/pom.xml index 55e5fd1b91ae..c09383766b60 100755 --- a/saml-core-api/pom.xml +++ b/saml-core-api/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/saml-core/pom.xml b/saml-core/pom.xml index 18f0063c6575..42a78471694e 100755 --- a/saml-core/pom.xml +++ b/saml-core/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/server-spi-private/pom.xml b/server-spi-private/pom.xml index 72a3ff7ae44d..d42e2eae8265 100755 --- a/server-spi-private/pom.xml +++ b/server-spi-private/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/server-spi/pom.xml b/server-spi/pom.xml index 04415ed194bc..817326f5410c 100755 --- a/server-spi/pom.xml +++ b/server-spi/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/services/pom.xml b/services/pom.xml index d4941b9d0690..fee98c24a52c 100755 --- a/services/pom.xml +++ b/services/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/testsuite/db-allocator-plugin/pom.xml b/testsuite/db-allocator-plugin/pom.xml index 6bc04d069588..367c4afe6528 100644 --- a/testsuite/db-allocator-plugin/pom.xml +++ b/testsuite/db-allocator-plugin/pom.xml @@ -22,7 +22,7 @@ keycloak-testsuite-pom org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/pom.xml b/testsuite/integration-arquillian/pom.xml index e518edbd3dfc..6b07aa173f97 100644 --- a/testsuite/integration-arquillian/pom.xml +++ b/testsuite/integration-arquillian/pom.xml @@ -24,7 +24,7 @@ org.keycloak keycloak-testsuite-pom - 11.0.1 + 11.0.2 ../pom.xml diff --git a/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml b/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml index e9f5ca0780ec..5e146b108e65 100644 --- a/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml index 6292d0e4d295..39ac7c3d9e74 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml index c50bb0ecafc3..75e35d49e815 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml index 2fb9662fa761..800e752029fc 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml @@ -22,7 +22,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml index 42902e42256f..85cc48d53c71 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss-relative - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml index 88284d627c4f..0bd444d378d6 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml index 24dbbf51f175..6b164b10c460 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss-relative - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml index 07963397eca2..500154c8452a 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml index a19f24426251..bb17af3943b6 100644 --- a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jboss - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml index d64bb997321d..790990e01674 100644 --- a/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jetty - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml index 1989d3d4c737..4bd3442b7c39 100644 --- a/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jetty - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml index 1529afede888..4ef3007d9c84 100644 --- a/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jetty - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml index 6a73d5a9843f..d23206c81f79 100644 --- a/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-jetty - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml index d895bba32152..4a69025f240c 100644 --- a/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml b/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml index 0d714d5a5786..5d2c27dd6375 100644 --- a/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-karaf - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml b/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml index b8769e100856..fdc0b967f731 100644 --- a/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-karaf - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml b/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml index 8ca9aaadf6a9..019f35d24449 100644 --- a/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/pom.xml b/testsuite/integration-arquillian/servers/app-server/pom.xml index 2063f6fb6031..c56e8df0bda5 100644 --- a/testsuite/integration-arquillian/servers/app-server/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml index 251a0f0a4fe7..f004cbe00c85 100644 --- a/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-servers-app-server-tomcat org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml index 46d67a3d0aec..d0dc314ef2f5 100644 --- a/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml index 680740d12769..6f0bd6f57a3c 100644 --- a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-tomcat - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml index 5958ad3ba480..07ab13d66793 100644 --- a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-tomcat - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml index 0088fa303fbe..03f49073dd6f 100644 --- a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server-tomcat - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml b/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml index 61fada989cab..19c6d07a9323 100644 --- a/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml +++ b/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml @@ -18,7 +18,7 @@ org.keycloak.testsuite integration-arquillian-servers-app-server - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml index 577dbf80dfe5..22f6b9df6f09 100644 --- a/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server-jboss - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml index 019c0b6e2b51..cd3cba78f7bf 100644 --- a/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server-jboss - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml index a02621f327a9..fb36ea426963 100644 --- a/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml index fc67038f2f63..86ab6bb3f20d 100644 --- a/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server-jboss - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/pom.xml b/testsuite/integration-arquillian/servers/auth-server/pom.xml index 1bd7697eacbe..da47f3cb4a67 100644 --- a/testsuite/integration-arquillian/servers/auth-server/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml b/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml index fe227cde917f..46e619165422 100644 --- a/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-servers-auth-server org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/services/pom.xml b/testsuite/integration-arquillian/servers/auth-server/services/pom.xml index 2c3f4e4a7738..0f3bf4228007 100644 --- a/testsuite/integration-arquillian/servers/auth-server/services/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/services/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml b/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml index e7ee46d200ef..53f8d7942ecb 100644 --- a/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server-services - 11.0.1 + 11.0.2 integration-arquillian-testsuite-providers diff --git a/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml b/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml index a6010a078fe8..8ce74c0f8a76 100644 --- a/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml +++ b/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-auth-server - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml b/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml index 4edae8824dab..c27787558a01 100644 --- a/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml +++ b/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-cache-server-jboss - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml b/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml index b372e79e32ea..5eea16d8a388 100644 --- a/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml +++ b/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-cache-server-jboss - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml b/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml index 690208c0ab9e..17d628e1e3ed 100644 --- a/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml +++ b/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers-cache-server - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/cache-server/pom.xml b/testsuite/integration-arquillian/servers/cache-server/pom.xml index 198d0735fa10..cf1a8e3c05a2 100644 --- a/testsuite/integration-arquillian/servers/cache-server/pom.xml +++ b/testsuite/integration-arquillian/servers/cache-server/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/migration/pom.xml b/testsuite/integration-arquillian/servers/migration/pom.xml index 796224bf0454..026fb6ef195f 100644 --- a/testsuite/integration-arquillian/servers/migration/pom.xml +++ b/testsuite/integration-arquillian/servers/migration/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-servers - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/servers/pom.xml b/testsuite/integration-arquillian/servers/pom.xml index 7c8021c7fdde..4a91588b0745 100644 --- a/testsuite/integration-arquillian/servers/pom.xml +++ b/testsuite/integration-arquillian/servers/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml b/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml index 3a3f6f2fc697..00441ae129d3 100644 --- a/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml +++ b/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml @@ -5,7 +5,7 @@ org.keycloak.testsuite integration-arquillian-test-apps - 11.0.1 + 11.0.2 keycloak-test-app-profile-jee diff --git a/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml b/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml index a294b6ba5208..57d4e76e4e98 100755 --- a/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml +++ b/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-test-apps-cors-parent - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml b/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml index 65737369244a..946992280723 100755 --- a/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml +++ b/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-test-apps-cors-parent - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/cors/pom.xml b/testsuite/integration-arquillian/test-apps/cors/pom.xml index ab98fc2e92eb..860690a59c9c 100644 --- a/testsuite/integration-arquillian/test-apps/cors/pom.xml +++ b/testsuite/integration-arquillian/test-apps/cors/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-test-apps org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml index 346794262d7e..356f6da780b6 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml index 24b9dac4ed1a..cc196ff4ddad 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml index 1e54e825cf4c..832d31c0fe77 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml index 1c6787e95bbf..9fb619481ba7 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml index 754fc579b0e9..a4317b3bf8d3 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml index bd2dc86ab12a..6ae66481747f 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml index 976b6deedd61..f94414442fe3 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml index 910cf60e0eea..e0e6783b9369 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.1 + 11.0.2 Keycloak Examples - External Config diff --git a/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml index 9ec707040800..9574e43b2c03 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/pom.xml index 71695ab24700..a7dc41aab9ff 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/pom.xml @@ -20,7 +20,7 @@ integration-arquillian-test-apps org.keycloak.testsuite - 11.0.1 + 11.0.2 Fuse Test Applications diff --git a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml index c46ac181275d..f97294b08a8f 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml index 3ad45c34bede..2c7b1d329fd8 100755 --- a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml +++ b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml @@ -21,7 +21,7 @@ integration-arquillian-test-apps-fuse-parent org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml b/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml index 46fda44769b5..a2adf263af3c 100755 --- a/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml +++ b/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-test-apps - 11.0.1 + 11.0.2 hello-world-authz-service diff --git a/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml b/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml index 4fc6bbbc1847..9ead2907141f 100755 --- a/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml +++ b/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml @@ -5,7 +5,7 @@ org.keycloak.testsuite integration-arquillian-test-apps-photoz-parent - 11.0.1 + 11.0.2 ../pom.xml diff --git a/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml b/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml index 37de432d62ff..6760bb6c7529 100755 --- a/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml +++ b/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml @@ -6,7 +6,7 @@ org.keycloak.testsuite integration-arquillian-test-apps-photoz-parent - 11.0.1 + 11.0.2 ../pom.xml diff --git a/testsuite/integration-arquillian/test-apps/photoz/pom.xml b/testsuite/integration-arquillian/test-apps/photoz/pom.xml index 0ed20ff0bb8f..6f51ee1208f3 100755 --- a/testsuite/integration-arquillian/test-apps/photoz/pom.xml +++ b/testsuite/integration-arquillian/test-apps/photoz/pom.xml @@ -6,7 +6,7 @@ org.keycloak.testsuite integration-arquillian-test-apps - 11.0.1 + 11.0.2 integration-arquillian-test-apps-photoz-parent diff --git a/testsuite/integration-arquillian/test-apps/pom.xml b/testsuite/integration-arquillian/test-apps/pom.xml index e34e83a5d00b..d8fb098e3196 100644 --- a/testsuite/integration-arquillian/test-apps/pom.xml +++ b/testsuite/integration-arquillian/test-apps/pom.xml @@ -5,7 +5,7 @@ integration-arquillian org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml b/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml index 8b688491309e..e604349849eb 100755 --- a/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml +++ b/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml @@ -6,7 +6,7 @@ org.keycloak.testsuite integration-arquillian-test-apps - 11.0.1 + 11.0.2 servlet-authz-app diff --git a/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml b/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml index d25b204e1c85..0483c36fd1d0 100755 --- a/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml +++ b/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-test-apps - 11.0.1 + 11.0.2 servlet-policy-enforcer diff --git a/testsuite/integration-arquillian/test-apps/servlets/pom.xml b/testsuite/integration-arquillian/test-apps/servlets/pom.xml index ae209836dba5..b6b3d4867891 100644 --- a/testsuite/integration-arquillian/test-apps/servlets/pom.xml +++ b/testsuite/integration-arquillian/test-apps/servlets/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-test-apps org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml b/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml index de0a302de294..80ef843bc2bd 100644 --- a/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml +++ b/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-test-apps org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml b/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml index 5cba884d3467..067f1a738b29 100644 --- a/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml +++ b/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-test-apps org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/tests/base/pom.xml b/testsuite/integration-arquillian/tests/base/pom.xml index 0e86fec6db16..01979803fea2 100644 --- a/testsuite/integration-arquillian/tests/base/pom.xml +++ b/testsuite/integration-arquillian/tests/base/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian-tests - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml index 754b6615cc8b..b511df39d38d 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters - 11.0.1 + 11.0.2 integration-arquillian-tests-adapters-jboss diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml index 42522cb6e549..7c7f8954da3e 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-jboss-relative - 11.0.1 + 11.0.2 integration-arquillian-tests-adapters-relative-eap diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml index 85cf373bf06b..5f5ad48e3ce1 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-jboss - 11.0.1 + 11.0.2 pom diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml index 5cedfe10c22d..6f5573c2c601 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-jboss-relative - 11.0.1 + 11.0.2 integration-arquillian-tests-adapters-relative-wildfly diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml index 0f5d4dcdb14c..276d221812c8 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-jboss - 11.0.1 + 11.0.2 integration-arquillian-tests-adapters-remote diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml index b56fb07dccb1..f751a14f1998 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-karaf - 11.0.1 + 11.0.2 integration-arquillian-tests-adapters-fuse61 diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml index d602ab6c9474..f7d5d2424415 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-karaf - 11.0.1 + 11.0.2 integration-arquillian-tests-adapters-fuse62 diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml index accad5c0ad6b..0a6588a93332 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-karaf - 11.0.1 + 11.0.2 integration-arquillian-tests-adapters-karaf3 diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml index e2dd7cc800f4..a9b698959553 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters - 11.0.1 + 11.0.2 integration-arquillian-tests-adapters-karaf diff --git a/testsuite/integration-arquillian/tests/other/adapters/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/pom.xml index 78fad156d359..194c047d6b89 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.1 + 11.0.2 integration-arquillian-tests-adapters diff --git a/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml index c6fcff70b5ac..e95ba61d9d6b 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters - 11.0.1 + 11.0.2 integration-arquillian-tests-adapters-was diff --git a/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml index e2018196c23c..4945a8ff6d16 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-was - 11.0.1 + 11.0.2 integration-arquillian-tests-adapters-was8 diff --git a/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml index 9e00ef3faa58..12ae7ebeb1d6 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters - 11.0.1 + 11.0.2 integration-arquillian-tests-adapters-wls diff --git a/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml index b955b89599fc..74d97ce7fd5b 100644 --- a/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml +++ b/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-adapters-wls - 11.0.1 + 11.0.2 integration-arquillian-tests-adapters-wls12 diff --git a/testsuite/integration-arquillian/tests/other/base-ui/pom.xml b/testsuite/integration-arquillian/tests/other/base-ui/pom.xml index d23ff08fc883..862f9e4fd78e 100644 --- a/testsuite/integration-arquillian/tests/other/base-ui/pom.xml +++ b/testsuite/integration-arquillian/tests/other/base-ui/pom.xml @@ -22,7 +22,7 @@ integration-arquillian-tests-other org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/tests/other/clean-start/pom.xml b/testsuite/integration-arquillian/tests/other/clean-start/pom.xml index 898f6cc5b9aa..38bd7b01129b 100644 --- a/testsuite/integration-arquillian/tests/other/clean-start/pom.xml +++ b/testsuite/integration-arquillian/tests/other/clean-start/pom.xml @@ -23,7 +23,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.1 + 11.0.2 integration-arquillian-tests-smoke-clean-start diff --git a/testsuite/integration-arquillian/tests/other/console/pom.xml b/testsuite/integration-arquillian/tests/other/console/pom.xml index 6136776ca895..17fd5df67222 100644 --- a/testsuite/integration-arquillian/tests/other/console/pom.xml +++ b/testsuite/integration-arquillian/tests/other/console/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.1 + 11.0.2 integration-arquillian-tests-console diff --git a/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml b/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml index 1b7017dba7fc..13adaa4a1147 100644 --- a/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml +++ b/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.1 + 11.0.2 integration-arquillian-tests-jpa-performance diff --git a/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml b/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml index d41fbc704fa8..7e44ed188d75 100644 --- a/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml +++ b/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.1 + 11.0.2 integration-arquillian-tests-other-mod_auth_mellon diff --git a/testsuite/integration-arquillian/tests/other/pom.xml b/testsuite/integration-arquillian/tests/other/pom.xml index 9b305a64ff33..f99e5fe9787b 100644 --- a/testsuite/integration-arquillian/tests/other/pom.xml +++ b/testsuite/integration-arquillian/tests/other/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests - 11.0.1 + 11.0.2 integration-arquillian-tests-other diff --git a/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml b/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml index c03de34b4801..3bceda4b6548 100644 --- a/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml +++ b/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian-tests-other - 11.0.1 + 11.0.2 ../pom.xml diff --git a/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml b/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml index 0e094e94ab73..722ffcd0ebb5 100644 --- a/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml +++ b/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-tests-other org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/tests/other/sssd/pom.xml b/testsuite/integration-arquillian/tests/other/sssd/pom.xml index 6db576d88815..02bd53350652 100644 --- a/testsuite/integration-arquillian/tests/other/sssd/pom.xml +++ b/testsuite/integration-arquillian/tests/other/sssd/pom.xml @@ -5,7 +5,7 @@ integration-arquillian-tests-other org.keycloak.testsuite - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/integration-arquillian/tests/pom.xml b/testsuite/integration-arquillian/tests/pom.xml index 1e49940c24ae..47104574611b 100755 --- a/testsuite/integration-arquillian/tests/pom.xml +++ b/testsuite/integration-arquillian/tests/pom.xml @@ -24,7 +24,7 @@ org.keycloak.testsuite integration-arquillian - 11.0.1 + 11.0.2 pom diff --git a/testsuite/integration-arquillian/util/pom.xml b/testsuite/integration-arquillian/util/pom.xml index 4e678ba9f9af..b79b01c41886 100644 --- a/testsuite/integration-arquillian/util/pom.xml +++ b/testsuite/integration-arquillian/util/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite integration-arquillian - 11.0.1 + 11.0.2 4.0.0 diff --git a/testsuite/performance/infinispan/pom.xml b/testsuite/performance/infinispan/pom.xml index 362f63655eeb..5f16593bfa29 100644 --- a/testsuite/performance/infinispan/pom.xml +++ b/testsuite/performance/infinispan/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite performance - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/testsuite/performance/keycloak/pom.xml b/testsuite/performance/keycloak/pom.xml index dcffb8789241..cbcaef180273 100644 --- a/testsuite/performance/keycloak/pom.xml +++ b/testsuite/performance/keycloak/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite performance - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml b/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml index fe7b0c1bbba0..673a0f66fc9d 100644 --- a/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml +++ b/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite performance - 11.0.1 + 11.0.2 ../../pom.xml 4.0.0 diff --git a/testsuite/performance/pom.xml b/testsuite/performance/pom.xml index a879535177f7..073d11a48520 100644 --- a/testsuite/performance/pom.xml +++ b/testsuite/performance/pom.xml @@ -21,7 +21,7 @@ keycloak-testsuite-pom org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/testsuite/performance/tests/pom.xml b/testsuite/performance/tests/pom.xml index ec409b68849b..7cf0eaf802a6 100644 --- a/testsuite/performance/tests/pom.xml +++ b/testsuite/performance/tests/pom.xml @@ -21,7 +21,7 @@ org.keycloak.testsuite performance - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/testsuite/pom.xml b/testsuite/pom.xml index 03a732eca42b..c48fe3cb895d 100755 --- a/testsuite/pom.xml +++ b/testsuite/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml 4.0.0 diff --git a/testsuite/utils/pom.xml b/testsuite/utils/pom.xml index 268e2e3be059..ba032e916495 100755 --- a/testsuite/utils/pom.xml +++ b/testsuite/utils/pom.xml @@ -21,7 +21,7 @@ keycloak-testsuite-pom org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/themes/pom.xml b/themes/pom.xml index 9c23d41fff31..6732e47fd424 100755 --- a/themes/pom.xml +++ b/themes/pom.xml @@ -4,7 +4,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 4.0.0 diff --git a/util/embedded-ldap/pom.xml b/util/embedded-ldap/pom.xml index f789870dd381..987e6af62a6b 100644 --- a/util/embedded-ldap/pom.xml +++ b/util/embedded-ldap/pom.xml @@ -21,7 +21,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../../pom.xml 4.0.0 diff --git a/util/pom.xml b/util/pom.xml index f24d855fe1d0..945112363f2c 100644 --- a/util/pom.xml +++ b/util/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 ../pom.xml diff --git a/wildfly/adduser/pom.xml b/wildfly/adduser/pom.xml index beb326d2f6cf..4ed59249f0c4 100755 --- a/wildfly/adduser/pom.xml +++ b/wildfly/adduser/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-wildfly-parent - 11.0.1 + 11.0.2 keycloak-wildfly-adduser diff --git a/wildfly/extensions/pom.xml b/wildfly/extensions/pom.xml index 90d8d7ce65cb..ab035d93a83f 100755 --- a/wildfly/extensions/pom.xml +++ b/wildfly/extensions/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-wildfly-parent - 11.0.1 + 11.0.2 keycloak-wildfly-extensions diff --git a/wildfly/pom.xml b/wildfly/pom.xml index 17aa95e1718f..d0721a744eb3 100755 --- a/wildfly/pom.xml +++ b/wildfly/pom.xml @@ -20,7 +20,7 @@ keycloak-parent org.keycloak - 11.0.1 + 11.0.2 Keycloak WildFly Integration diff --git a/wildfly/server-subsystem/pom.xml b/wildfly/server-subsystem/pom.xml index 9a2e6c1b3859..aad91b6059f7 100755 --- a/wildfly/server-subsystem/pom.xml +++ b/wildfly/server-subsystem/pom.xml @@ -21,7 +21,7 @@ org.keycloak keycloak-wildfly-parent - 11.0.1 + 11.0.2 keycloak-wildfly-server-subsystem From 0a4bccadf02487e66e0c7459e289121409640af7 Mon Sep 17 00:00:00 2001 From: stianst Date: Wed, 9 Sep 2020 21:25:08 +0200 Subject: [PATCH 17/30] KEYCLOAK-15012 Fix issue with folder theme provider --- .../src/main/java/org/keycloak/theme/FolderTheme.java | 2 +- .../java/org/keycloak/theme/FolderThemeProvider.java | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/services/src/main/java/org/keycloak/theme/FolderTheme.java b/services/src/main/java/org/keycloak/theme/FolderTheme.java index f15bddbf332b..28a1c1120127 100644 --- a/services/src/main/java/org/keycloak/theme/FolderTheme.java +++ b/services/src/main/java/org/keycloak/theme/FolderTheme.java @@ -93,7 +93,7 @@ public InputStream getResourceAsStream(String path) throws IOException { } File file = new File(resourcesDir, path); - if (!file.isFile() || !file.getCanonicalPath().startsWith(resourcesDir.getCanonicalPath())) { + if (!file.isFile() || !file.getCanonicalPath().startsWith(resourcesDir.getCanonicalPath() + File.separator)) { return null; } else { return file.toURI().toURL().openStream(); diff --git a/services/src/main/java/org/keycloak/theme/FolderThemeProvider.java b/services/src/main/java/org/keycloak/theme/FolderThemeProvider.java index 5c75f56f2be0..1ea3123af8a3 100755 --- a/services/src/main/java/org/keycloak/theme/FolderThemeProvider.java +++ b/services/src/main/java/org/keycloak/theme/FolderThemeProvider.java @@ -84,7 +84,15 @@ public void close() { } private File getThemeDir(String name, Theme.Type type) { - return new File(themesDir, name + File.separator + type.name().toLowerCase()); + File f = new File(themesDir, name + File.separator + type.name().toLowerCase()); + try { + if (!f.getCanonicalPath().startsWith(themesDir.getCanonicalPath() + File.separator)) { + return null; + } + } catch (IOException e) { + return null; + } + return f; } } From d962340561601570db630eee4d3b207be7c220fe Mon Sep 17 00:00:00 2001 From: vmuzikar Date: Wed, 16 Sep 2020 12:20:29 +0200 Subject: [PATCH 18/30] KEYCLOAK-15584 User can manage resources with just "view-profile" role using new Account Console (cherry picked from commit 1b063825755d9f5aa13e612757e8ef7299430761) --- .../account/resources/ResourceService.java | 3 + .../account/ResourcesRestServiceTest.java | 79 ++++++++++++++----- 2 files changed, 64 insertions(+), 18 deletions(-) diff --git a/services/src/main/java/org/keycloak/services/resources/account/resources/ResourceService.java b/services/src/main/java/org/keycloak/services/resources/account/resources/ResourceService.java index 7541137fb4d0..71cf81a46ddc 100644 --- a/services/src/main/java/org/keycloak/services/resources/account/resources/ResourceService.java +++ b/services/src/main/java/org/keycloak/services/resources/account/resources/ResourceService.java @@ -36,6 +36,7 @@ import org.jboss.resteasy.spi.HttpRequest; import org.keycloak.authorization.model.PermissionTicket; import org.keycloak.authorization.model.ResourceServer; +import org.keycloak.models.AccountRoles; import org.keycloak.models.KeycloakSession; import org.keycloak.models.UserModel; import org.keycloak.models.UserProvider; @@ -118,6 +119,8 @@ public Response user(@QueryParam("value") String value) { @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) public Response revoke(List permissions) { + auth.require(AccountRoles.MANAGE_ACCOUNT); + if (permissions == null || permissions.isEmpty()) { throw new BadRequestException("invalid_permissions"); } diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/account/ResourcesRestServiceTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/account/ResourcesRestServiceTest.java index a07f294b9a7a..60416d1d141e 100755 --- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/account/ResourcesRestServiceTest.java +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/account/ResourcesRestServiceTest.java @@ -16,24 +16,6 @@ */ package org.keycloak.testsuite.account; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import javax.ws.rs.core.Response; -import java.io.IOException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.Iterator; -import java.util.LinkedList; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.function.Consumer; - import com.fasterxml.jackson.core.type.TypeReference; import org.junit.Test; import org.keycloak.admin.client.resource.AuthorizationResource; @@ -57,9 +39,29 @@ import org.keycloak.services.resources.account.resources.AbstractResourceService.Permission; import org.keycloak.services.resources.account.resources.AbstractResourceService.Resource; import org.keycloak.testsuite.util.ClientBuilder; +import org.keycloak.testsuite.util.TokenUtil; import org.keycloak.testsuite.util.UserBuilder; import org.keycloak.util.JsonSerialization; +import javax.ws.rs.core.Response; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.Iterator; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.function.Consumer; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + /** * @author Pedro Igor */ @@ -403,6 +405,47 @@ public void failShareResourceInvalidPermissions() throws Exception { assertEquals(Response.Status.BAD_REQUEST.getStatusCode(), response.getStatus()); } + @Test + public void testEndpointPermissions() throws Exception { + // resource for view-account-access + String resourceId; + ResourceRepresentation resource = new ResourceRepresentation(); + resource.setOwnerManagedAccess(true); + resource.setOwner(findUser("view-account-access").getId()); + resource.setName("Resource view-account-access"); + resource.setDisplayName("Display Name view-account-access"); + resource.setIconUri("Icon Uri view-account-access"); + resource.addScope("Scope A", "Scope B", "Scope C", "Scope D"); + resource.setUri("http://resourceServer.com/resources/view-account-access"); + try (Response response1 = getResourceServer().authorization().resources().create(resource)) { + resourceId = response1.readEntity(ResourceRepresentation.class).getId(); + } + + final String resourcesUrl = getAccountUrl("resources"); + final String sharedWithOthersUrl = resourcesUrl + "/shared-with-others"; + final String sharedWithMeUrl = resourcesUrl + "/shared-with-me"; + final String resourceUrl = resourcesUrl + "/" + resourceId; + final String permissionsUrl = resourceUrl + "/permissions"; + final String requestsUrl = resourceUrl + "/permissions/requests"; + + TokenUtil viewProfileTokenUtil = new TokenUtil("view-account-access", "password"); + TokenUtil noAccessTokenUtil = new TokenUtil("no-account-access", "password"); + + // test read access + for (String url : Arrays.asList(resourcesUrl, sharedWithOthersUrl, sharedWithMeUrl, resourceUrl, permissionsUrl, requestsUrl)) { + assertEquals( "no-account-access GET " + url, 403, + SimpleHttp.doGet(url, httpClient).acceptJson().auth(noAccessTokenUtil.getToken()).asStatus()); + assertEquals("view-account-access GET " + url,200, + SimpleHttp.doGet(url, httpClient).acceptJson().auth(viewProfileTokenUtil.getToken()).asStatus()); + } + + // test write access + assertEquals( "no-account-access PUT " + permissionsUrl, 403, + SimpleHttp.doPut(permissionsUrl, httpClient).acceptJson().auth(noAccessTokenUtil.getToken()).json(Collections.emptyList()).asStatus()); + assertEquals( "view-account-access PUT " + permissionsUrl, 403, + SimpleHttp.doPut(permissionsUrl, httpClient).acceptJson().auth(viewProfileTokenUtil.getToken()).json(Collections.emptyList()).asStatus()); + } + @Test public void testRevokePermission() throws Exception { List users = Arrays.asList("jdoe", "alice"); From 6a3945c9eb5560c6a83d68ba1637a2ffe41fd011 Mon Sep 17 00:00:00 2001 From: vmuzikar Date: Fri, 25 Sep 2020 19:32:45 +0200 Subject: [PATCH 19/30] KEYCLOAK-15722 KeycloakPromise sometimes doesn't work (cherry picked from commit fbe18e67c3f6c103070781ddc84444d2cb3fcef9) --- .../oidc/js/src/main/resources/keycloak.js | 55 ++++++++----------- 1 file changed, 22 insertions(+), 33 deletions(-) diff --git a/adapters/oidc/js/src/main/resources/keycloak.js b/adapters/oidc/js/src/main/resources/keycloak.js index 845ea3006abb..5ab2055bbf53 100755 --- a/adapters/oidc/js/src/main/resources/keycloak.js +++ b/adapters/oidc/js/src/main/resources/keycloak.js @@ -74,38 +74,6 @@ } } - function toKeycloakPromise(promise) { - promise.__proto__ = KeycloakPromise.prototype; - return promise; - } - - function KeycloakPromise(executor) { - return toKeycloakPromise(new Promise(executor)); - } - - KeycloakPromise.prototype = Object.create(Promise.prototype); - KeycloakPromise.prototype.constructor = KeycloakPromise; - - KeycloakPromise.prototype.success = function(callback) { - logPromiseDeprecation(); - - var promise = this.then(function handleSuccess(value) { - callback(value); - }); - - return toKeycloakPromise(promise); - }; - - KeycloakPromise.prototype.error = function(callback) { - logPromiseDeprecation(); - - var promise = this.catch(function handleError(error) { - callback(error); - }); - - return toKeycloakPromise(promise); - }; - function Keycloak (config) { if (!(this instanceof Keycloak)) { return new Keycloak(config); @@ -1192,10 +1160,31 @@ p.reject(result); } }; - p.promise = new KeycloakPromise(function(resolve, reject) { + p.promise = new Promise(function(resolve, reject) { p.resolve = resolve; p.reject = reject; }); + + p.promise.success = function(callback) { + logPromiseDeprecation(); + + this.then(function handleSuccess(value) { + callback(value); + }); + + return this; + } + + p.promise.error = function(callback) { + logPromiseDeprecation(); + + this.catch(function handleError(error) { + callback(error); + }); + + return this; + } + return p; } From c1130d25b047a6c59069ffdb403723a941cfc415 Mon Sep 17 00:00:00 2001 From: Mark Wolfe Date: Wed, 16 Sep 2020 09:16:50 +1000 Subject: [PATCH 20/30] KEYCLOAK-15460 Fix missing event types in SAML endpoint A change was done in https://github.com/keycloak/keycloak/commit/32f13016fafcaadec9092a8b078d7a7717a18b29 which isn't setting the type for events and causing an internal error. (cherry picked from commit 3723d78e3cbaf6e43341d1dd3896a01a39cb5676) --- .../src/main/java/org/keycloak/broker/saml/SAMLEndpoint.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/services/src/main/java/org/keycloak/broker/saml/SAMLEndpoint.java b/services/src/main/java/org/keycloak/broker/saml/SAMLEndpoint.java index c46b88b22c1e..9d10e7fe4160 100755 --- a/services/src/main/java/org/keycloak/broker/saml/SAMLEndpoint.java +++ b/services/src/main/java/org/keycloak/broker/saml/SAMLEndpoint.java @@ -258,6 +258,7 @@ protected Response handleSamlRequest(String samlRequest, String relayState) { RequestAbstractType requestAbstractType = (RequestAbstractType) holder.getSamlObject(); // validate destination if (requestAbstractType.getDestination() == null && containsUnencryptedSignature(holder)) { + event.event(EventType.IDENTITY_PROVIDER_RESPONSE); event.detail(Details.REASON, "missing_required_destination"); event.error(Errors.INVALID_REQUEST); return ErrorPage.error(session, null, Response.Status.BAD_REQUEST, Messages.INVALID_REQUEST); @@ -521,6 +522,7 @@ public Response handleSamlResponse(String samlResponse, String relayState, Strin StatusResponseType statusResponse = (StatusResponseType)holder.getSamlObject(); // validate destination if (statusResponse.getDestination() == null && containsUnencryptedSignature(holder)) { + event.event(EventType.IDENTITY_PROVIDER_RESPONSE); event.detail(Details.REASON, "missing_required_destination"); event.error(Errors.INVALID_SAML_LOGOUT_RESPONSE); return ErrorPage.error(session, null, Response.Status.BAD_REQUEST, Messages.INVALID_REQUEST); From b5d90130350b6ad15c30041bf783fccb5a3fe6dd Mon Sep 17 00:00:00 2001 From: vmuzikar Date: Thu, 17 Sep 2020 17:34:36 +0200 Subject: [PATCH 21/30] KEYCLOAK-15590 Javascript adapter init() is throwing a promise error after upgrade to 11 (cherry picked from commit bca73fd04a919f3c41f5104b69e24b04f1cddf53) --- .../oidc/js/src/main/resources/keycloak.js | 18 ++++- .../rest/resource/TestJavascriptResource.java | 8 +++ .../resources/javascript/init-in-head.html | 65 +++++++++++++++++++ .../javascript/JavascriptTestExecutor.java | 5 ++ .../javascript/JavascriptAdapterTest.java | 43 +++++++++--- 5 files changed, 128 insertions(+), 11 deletions(-) create mode 100644 testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/src/main/resources/javascript/init-in-head.html diff --git a/adapters/oidc/js/src/main/resources/keycloak.js b/adapters/oidc/js/src/main/resources/keycloak.js index 5ab2055bbf53..75fa20fc84f7 100755 --- a/adapters/oidc/js/src/main/resources/keycloak.js +++ b/adapters/oidc/js/src/main/resources/keycloak.js @@ -330,8 +330,24 @@ } } + function domReady() { + var promise = createPromise(); + + var checkReadyState = function () { + if (document.readyState === 'interactive' || document.readyState === 'complete') { + document.removeEventListener('readystatechange', checkReadyState); + promise.setSuccess(); + } + } + document.addEventListener('readystatechange', checkReadyState); + + checkReadyState(); // just in case the event was already fired and we missed it (in case the init is done later than at the load time, i.e. it's done from code) + + return promise.promise; + } + configPromise.then(function () { - check3pCookiesSupported().then(processInit) + domReady().then(check3pCookiesSupported).then(processInit) .catch(function() { promise.setError(); }); diff --git a/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/src/main/java/org/keycloak/testsuite/rest/resource/TestJavascriptResource.java b/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/src/main/java/org/keycloak/testsuite/rest/resource/TestJavascriptResource.java index b8da8ec73262..3ccd8dc53255 100644 --- a/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/src/main/java/org/keycloak/testsuite/rest/resource/TestJavascriptResource.java +++ b/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/src/main/java/org/keycloak/testsuite/rest/resource/TestJavascriptResource.java @@ -41,6 +41,14 @@ public String getJavascriptTestingEnvironment() throws IOException { return resourceToString("/javascript/index.html"); } + @GET + @Path("/init-in-head.html") + @Produces(MediaType.TEXT_HTML) + public String getJavascriptTestingEnvironmentWithInitInHead() throws IOException { + session.getProvider(SecurityHeadersProvider.class).options().skipHeaders(); + return resourceToString("/javascript/init-in-head.html"); + } + @GET @Path("/silent-check-sso.html") @Produces(MediaType.TEXT_HTML) diff --git a/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/src/main/resources/javascript/init-in-head.html b/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/src/main/resources/javascript/init-in-head.html new file mode 100644 index 000000000000..5cea6bd60898 --- /dev/null +++ b/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/src/main/resources/javascript/init-in-head.html @@ -0,0 +1,65 @@ + + + + + + + + + +

Result

+

+
+

Events

+

+
+
+
+
+
diff --git a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/util/javascript/JavascriptTestExecutor.java b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/util/javascript/JavascriptTestExecutor.java
index 54b33be1c530..9a2693b0d975 100644
--- a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/util/javascript/JavascriptTestExecutor.java
+++ b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/util/javascript/JavascriptTestExecutor.java
@@ -322,4 +322,9 @@ public JavascriptTestExecutor wait(long millis, JavascriptStateValidator validat
 
         return this;
     }
+
+    public JavascriptTestExecutor validateOutputField(JavascriptStateValidator validator) {
+        validator.validate(jsDriver, output, events);
+        return this;
+    }
 }
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/javascript/JavascriptAdapterTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/javascript/JavascriptAdapterTest.java
index 28729ecb0474..2471a1bad48a 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/javascript/JavascriptAdapterTest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/javascript/JavascriptAdapterTest.java
@@ -18,6 +18,8 @@
 import org.keycloak.testsuite.AssertEvents;
 import org.keycloak.testsuite.admin.ApiUtil;
 import org.keycloak.testsuite.arquillian.SuiteContext;
+import org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude;
+import org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude.AuthServer;
 import org.keycloak.testsuite.auth.page.account.Applications;
 import org.keycloak.testsuite.auth.page.login.OAuthGrant;
 import org.keycloak.testsuite.auth.page.login.UpdatePassword;
@@ -47,16 +49,11 @@
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertThat;
 import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-import org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude;
-import org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude.AuthServer;
-
-import static org.junit.Assume.assumeFalse;
+import static org.keycloak.testsuite.util.ServerURLs.AUTH_SERVER_HOST;
 import static org.keycloak.testsuite.util.URLAssert.assertCurrentUrlDoesntStartWith;
 import static org.keycloak.testsuite.util.URLAssert.assertCurrentUrlStartsWith;
 import static org.keycloak.testsuite.util.WaitUtils.waitForPageToLoad;
 import static org.keycloak.testsuite.util.WaitUtils.waitUntilElement;
-import static org.keycloak.testsuite.util.ServerURLs.AUTH_SERVER_HOST;
 
 /**
  * @author mhajas
@@ -65,6 +62,7 @@
 public class JavascriptAdapterTest extends AbstractJavascriptTest {
 
     private String testAppUrl;
+    private String testAppWithInitInHeadUrl;
     protected JavascriptTestExecutor testExecutor;
     private static int TIME_SKEW_TOLERANCE = 3;
 
@@ -90,7 +88,9 @@ protected RealmRepresentation updateRealm(RealmBuilder builder) {
 
     @Before
     public void setDefaultEnvironment() {
-        testAppUrl = authServerContextRootPage.toString().replace(AUTH_SERVER_HOST, JS_APP_HOST) + JAVASCRIPT_URL + "/index.html";
+        String testAppRootUrl = authServerContextRootPage.toString().replace(AUTH_SERVER_HOST, JS_APP_HOST) + JAVASCRIPT_URL;
+        testAppUrl = testAppRootUrl + "/index.html";
+        testAppWithInitInHeadUrl = testAppRootUrl + "/init-in-head.html";
 
         jsDriverTestRealmLoginPage.setAuthRealm(REALM_NAME);
         oAuthGrantPage.setAuthRealm(REALM_NAME);
@@ -101,10 +101,8 @@ public void setDefaultEnvironment() {
         events.poll();
         jsDriver.manage().deleteAllCookies();
 
-        jsDriver.navigate().to(testAppUrl);
+        navigateToTestApp(testAppUrl);
 
-        waitUntilElement(outputArea).is().present();
-        assertCurrentUrlStartsWith(testAppUrl, jsDriver);
         testExecutor = JavascriptTestExecutor.create(jsDriver, jsDriverTestRealmLoginPage);
 
         jsDriver.manage().deleteAllCookies();
@@ -121,6 +119,14 @@ protected JSObjectBuilder defaultArguments() {
     }
 
     private void assertOnTestAppUrl(WebDriver jsDriver, Object output, WebElement events) {
+        assertOnTestAppUrl(jsDriver, output, events, testAppUrl);
+    }
+
+    private void assertOnTestAppWithInitInHeadUrl(WebDriver jsDriver, Object output, WebElement events) {
+        assertOnTestAppUrl(jsDriver, output, events, testAppWithInitInHeadUrl);
+    }
+
+    private void assertOnTestAppUrl(WebDriver jsDriver, Object output, WebElement events, String testAppUrl) {
         waitForPageToLoad();
         assertCurrentUrlStartsWith(testAppUrl, jsDriver);
     }
@@ -748,7 +754,24 @@ public void testAIAFromJavascriptAdapterCancelled() {
         });
     }
 
+    @Test
+    // KEYCLOAK-15158
+    public void testInitInHead() {
+        navigateToTestApp(testAppWithInitInHeadUrl);
+
+        testExecutor.validateOutputField(this::assertInitNotAuth)
+                .login(this::assertOnLoginPage)
+                .loginForm(testUser, this::assertOnTestAppWithInitInHeadUrl)
+                .validateOutputField(this::assertInitAuth);
+    }
+
     protected void assertAdapterIsLoggedIn(WebDriver driver1, Object output, WebElement events) {
         assertTrue(testExecutor.isLoggedIn());
     }
+
+    protected void navigateToTestApp(final String testAppUrl) {
+        jsDriver.navigate().to(testAppUrl);
+        waitUntilElement(outputArea).is().present();
+        assertCurrentUrlStartsWith(testAppUrl, jsDriver);
+    }
 }

From e40234d9a02af5baa118fa071bb350fad542548a Mon Sep 17 00:00:00 2001
From: mhajas 
Date: Thu, 24 Sep 2020 11:06:35 +0200
Subject: [PATCH 22/30] KEYCLOAK-14969 Whitelist
 RefreshableKeycloakSecurityContext for KeycloakPrincipal serialization

---
 ...efreshableKeycloakSecurityContextTest.java | 72 ++++++++++++++++
 .../java/org/keycloak/KeycloakPrincipal.java  |  1 +
 .../adapter/servlet/SerializationServlet.java | 82 +++++++++++++++++++
 .../page/SerializationServletPage.java        | 48 +++++++++++
 .../KeycloakPrincipalSerializationTest.java   | 41 ++++++++++
 .../resources/adapter-test/demorealm.json     | 11 +++
 .../WEB-INF/keycloak.json                     | 10 +++
 .../serialization-servlet/WEB-INF/web.xml     | 76 +++++++++++++++++
 8 files changed, 341 insertions(+)
 create mode 100644 testsuite/integration-arquillian/test-apps/servlets/src/main/java/org/keycloak/testsuite/adapter/servlet/SerializationServlet.java
 create mode 100644 testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/adapter/page/SerializationServletPage.java
 create mode 100644 testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/adapter/servlet/KeycloakPrincipalSerializationTest.java
 create mode 100644 testsuite/integration-arquillian/tests/base/src/test/resources/adapter-test/serialization-servlet/WEB-INF/keycloak.json
 create mode 100644 testsuite/integration-arquillian/tests/base/src/test/resources/adapter-test/serialization-servlet/WEB-INF/web.xml

diff --git a/adapters/oidc/adapter-core/src/test/java/org/keycloak/adapters/RefreshableKeycloakSecurityContextTest.java b/adapters/oidc/adapter-core/src/test/java/org/keycloak/adapters/RefreshableKeycloakSecurityContextTest.java
index 08fd3b34075c..1a3b0101e9a7 100644
--- a/adapters/oidc/adapter-core/src/test/java/org/keycloak/adapters/RefreshableKeycloakSecurityContextTest.java
+++ b/adapters/oidc/adapter-core/src/test/java/org/keycloak/adapters/RefreshableKeycloakSecurityContextTest.java
@@ -1,8 +1,21 @@
 package org.keycloak.adapters;
 
+import org.junit.Assert;
 import org.junit.Test;
+import org.keycloak.KeycloakPrincipal;
+import org.keycloak.KeycloakSecurityContext;
+import org.keycloak.jose.jws.JWSBuilder;
+import org.keycloak.representations.AccessToken;
+import org.keycloak.representations.IDToken;
 import org.keycloak.representations.oidc.TokenMetadataRepresentation;
 
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+import java.security.KeyPair;
+import java.security.KeyPairGenerator;
+
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
@@ -39,4 +52,63 @@ public void sameIssuedAtAsNotBeforeIsActiveKEYCLOAK10013() {
 		token.issuedAt(5000);
 		assertTrue(sut.isActive());
 	}
+	
+	private AccessToken createSimpleToken() {
+		AccessToken token = new AccessToken();
+		token.id("111");
+		token.issuer("http://localhost:8080/auth/acme");
+		token.addAccess("foo").addRole("admin");
+		token.addAccess("bar").addRole("user");
+		return token;
+	}
+
+	@Test
+	public void testSerialization() throws Exception {
+		AccessToken token = createSimpleToken();
+		IDToken idToken = new IDToken();
+
+		idToken.setEmail("joe@email.cz");
+
+		KeyPair keyPair = KeyPairGenerator.getInstance("RSA").generateKeyPair();
+
+		String encoded = new JWSBuilder()
+				.jsonContent(token)
+				.rsa256(keyPair.getPrivate());
+		String encodedIdToken = new JWSBuilder()
+				.jsonContent(idToken)
+				.rsa256(keyPair.getPrivate());
+
+		KeycloakDeployment keycloakDeployment = new KeycloakDeployment();
+		keycloakDeployment.setNotBefore(5000);
+		
+		KeycloakSecurityContext ctx = new RefreshableKeycloakSecurityContext(keycloakDeployment,null, encoded, token,encodedIdToken, null, null);
+		KeycloakPrincipal principal = new KeycloakPrincipal("joe", ctx);
+
+		// Serialize
+		ByteArrayOutputStream bso = new ByteArrayOutputStream();
+		ObjectOutputStream oos = new ObjectOutputStream(bso);
+		oos.writeObject(principal);
+		oos.close();
+
+		// Deserialize
+		byte[] bytes = bso.toByteArray();
+		ByteArrayInputStream bis = new ByteArrayInputStream(bytes);
+		ObjectInputStream ois = new ObjectInputStream(bis);
+		principal = (KeycloakPrincipal)ois.readObject();
+		ctx = principal.getKeycloakSecurityContext();
+		token = ctx.getToken();
+		idToken = ctx.getIdToken();
+
+		System.out.println("Size of serialized principal: " + bytes.length);
+
+		Assert.assertEquals(encoded, ctx.getTokenString());
+		Assert.assertEquals(encodedIdToken, ctx.getIdTokenString());
+		Assert.assertEquals("111", token.getId());
+		Assert.assertEquals("111", token.getId());
+		Assert.assertTrue(token.getResourceAccess("foo").isUserInRole("admin"));
+		Assert.assertTrue(token.getResourceAccess("bar").isUserInRole("user"));
+		Assert.assertEquals("joe@email.cz", idToken.getEmail());
+		Assert.assertEquals("acme", ctx.getRealm());
+		ois.close();
+	}
 }
diff --git a/core/src/main/java/org/keycloak/KeycloakPrincipal.java b/core/src/main/java/org/keycloak/KeycloakPrincipal.java
index f7b1b3007ee8..beb7448599cf 100755
--- a/core/src/main/java/org/keycloak/KeycloakPrincipal.java
+++ b/core/src/main/java/org/keycloak/KeycloakPrincipal.java
@@ -72,6 +72,7 @@ private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundE
         DelegatingSerializationFilter.builder()
                 .addAllowedClass(KeycloakPrincipal.class)
                 .addAllowedClass(KeycloakSecurityContext.class)
+                .addAllowedPattern("org.keycloak.adapters.RefreshableKeycloakSecurityContext")
                 .setFilter(in);
 
         in.defaultReadObject();
diff --git a/testsuite/integration-arquillian/test-apps/servlets/src/main/java/org/keycloak/testsuite/adapter/servlet/SerializationServlet.java b/testsuite/integration-arquillian/test-apps/servlets/src/main/java/org/keycloak/testsuite/adapter/servlet/SerializationServlet.java
new file mode 100644
index 000000000000..eef704f86f8e
--- /dev/null
+++ b/testsuite/integration-arquillian/test-apps/servlets/src/main/java/org/keycloak/testsuite/adapter/servlet/SerializationServlet.java
@@ -0,0 +1,82 @@
+/*
+ * Copyright 2016 Red Hat, Inc. and/or its affiliates
+ * and other contributors as indicated by the @author tags.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.keycloak.testsuite.adapter.servlet;
+
+import org.keycloak.KeycloakPrincipal;
+import org.keycloak.KeycloakSecurityContext;
+import org.keycloak.adapters.RefreshableKeycloakSecurityContext;
+
+import javax.servlet.annotation.WebServlet;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+import java.io.ObjectStreamClass;
+import java.io.PrintWriter;
+
+/**
+ * @author mhajas
+ */
+@WebServlet("/serialization-servlet")
+public class SerializationServlet extends HttpServlet {
+
+    @Override
+    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
+        PrintWriter pw = resp.getWriter();
+        // Serialize
+        ByteArrayOutputStream bso = new ByteArrayOutputStream();
+        ObjectOutputStream oos = new ObjectOutputStream(bso);
+        oos.writeObject(req.getUserPrincipal());
+        oos.close();
+
+        // Deserialize
+        byte[] bytes = bso.toByteArray();
+        ByteArrayInputStream bis = new ByteArrayInputStream(bytes);
+        ObjectInputStream ois = new ObjectInputStream(bis) {
+            @Override
+            public Class resolveClass(ObjectStreamClass desc) throws IOException, ClassNotFoundException {
+                try {
+                    return Class.forName(desc.getName(), true, SerializationServlet.class.getClassLoader());
+                } catch (Exception e) { }
+
+                // Fall back (e.g. for primClasses)
+                return super.resolveClass(desc);
+            }
+        };
+
+        KeycloakPrincipal principal;
+        try {
+            principal = (KeycloakPrincipal) ois.readObject();
+        } catch (ClassNotFoundException e) {
+            e.printStackTrace();
+            pw.write("Deserialization failed");
+            return;
+        }
+
+        KeycloakSecurityContext ctx = principal.getKeycloakSecurityContext();
+        if (!(ctx instanceof RefreshableKeycloakSecurityContext)) {
+            pw.write("Context was not instance of RefreshableKeycloakSecurityContext");
+        }
+        
+        pw.write("Serialization/Deserialization was successful");
+    }
+}
diff --git a/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/adapter/page/SerializationServletPage.java b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/adapter/page/SerializationServletPage.java
new file mode 100644
index 000000000000..2308cb981824
--- /dev/null
+++ b/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/adapter/page/SerializationServletPage.java
@@ -0,0 +1,48 @@
+/*
+ * Copyright 2016 Red Hat, Inc. and/or its affiliates
+ * and other contributors as indicated by the @author tags.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.keycloak.testsuite.adapter.page;
+
+import org.jboss.arquillian.container.test.api.OperateOnDeployment;
+import org.jboss.arquillian.test.api.ArquillianResource;
+import org.keycloak.testsuite.page.AbstractPageWithInjectedUrl;
+
+import javax.ws.rs.core.UriBuilder;
+import java.net.URI;
+import java.net.URL;
+
+/**
+ *
+ * @author tkyjovsk
+ */
+public class SerializationServletPage extends AbstractPageWithInjectedUrl {
+
+    public static final String DEPLOYMENT_NAME = "serialization-servlet";
+
+    @ArquillianResource
+    @OperateOnDeployment(DEPLOYMENT_NAME)
+    private URL url;
+
+    @Override
+    public URL getInjectedUrl() {
+        return url;
+    }
+    
+    public URI logout() {
+        return getUriBuilder().clone().path("logout").build();
+    }
+}
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/adapter/servlet/KeycloakPrincipalSerializationTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/adapter/servlet/KeycloakPrincipalSerializationTest.java
new file mode 100644
index 000000000000..8066446fc894
--- /dev/null
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/adapter/servlet/KeycloakPrincipalSerializationTest.java
@@ -0,0 +1,41 @@
+package org.keycloak.testsuite.adapter.servlet;
+
+import org.jboss.arquillian.container.test.api.Deployment;
+import org.jboss.arquillian.graphene.page.Page;
+import org.jboss.shrinkwrap.api.spec.WebArchive;
+import org.junit.Test;
+import org.keycloak.testsuite.adapter.AbstractServletsAdapterTest;
+import org.keycloak.testsuite.adapter.page.SerializationServletPage;
+import org.keycloak.testsuite.arquillian.annotation.AppServerContainer;
+import org.keycloak.testsuite.utils.arquillian.ContainerConstants;
+
+import static org.hamcrest.Matchers.contains;
+import static org.hamcrest.Matchers.containsString;
+import static org.hamcrest.Matchers.equalTo;
+import static org.hamcrest.Matchers.not;
+import static org.junit.Assert.assertThat;
+
+
+@AppServerContainer(ContainerConstants.APP_SERVER_UNDERTOW)
+@AppServerContainer(ContainerConstants.APP_SERVER_WILDFLY)
+@AppServerContainer(ContainerConstants.APP_SERVER_EAP)
+// The purpose of this class is to test KeycloakPrincipal serialization on different app-server-jdks
+public class KeycloakPrincipalSerializationTest extends AbstractServletsAdapterTest {
+    @Page
+    protected SerializationServletPage serializationServlet;
+
+    @Deployment(name = SerializationServletPage.DEPLOYMENT_NAME)
+    protected static WebArchive serializationServlet() {
+        return servletDeployment(SerializationServletPage.DEPLOYMENT_NAME, SerializationServlet.class, ErrorServlet.class, ServletTestUtils.class);
+    }
+
+    @Test
+    public void testKeycloakPrincipalSerialization() {
+        serializationServlet.navigateTo();
+        testRealmLoginPage.form().login("bburke@redhat.com", "password");
+
+        assertThat(driver.getPageSource(), containsString("Serialization/Deserialization was successful"));
+        assertThat(driver.getPageSource(), not(containsString("Context was not instance of RefreshableKeycloakSecurityContext")));
+        assertThat(driver.getPageSource(), not(containsString("Deserialization failed")));
+    }
+}
diff --git a/testsuite/integration-arquillian/tests/base/src/test/resources/adapter-test/demorealm.json b/testsuite/integration-arquillian/tests/base/src/test/resources/adapter-test/demorealm.json
index 6af989d114a6..5f331ea7448b 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/resources/adapter-test/demorealm.json
+++ b/testsuite/integration-arquillian/tests/base/src/test/resources/adapter-test/demorealm.json
@@ -151,6 +151,17 @@
             "secret": "password",
             "directAccessGrantsEnabled": true
         },
+        {
+            "clientId": "serialization-servlet",
+            "enabled": true,
+            "adminUrl": "/serialization-servlet",
+            "baseUrl": "/serialization-servlet",
+            "redirectUris": [
+                "/serialization-servlet/*"
+            ],
+            "secret": "password",
+            "directAccessGrantsEnabled": true
+        },
         {
             "clientId": "customer-portal-subsystem",
             "enabled": true,
diff --git a/testsuite/integration-arquillian/tests/base/src/test/resources/adapter-test/serialization-servlet/WEB-INF/keycloak.json b/testsuite/integration-arquillian/tests/base/src/test/resources/adapter-test/serialization-servlet/WEB-INF/keycloak.json
new file mode 100644
index 000000000000..d861ea9e661a
--- /dev/null
+++ b/testsuite/integration-arquillian/tests/base/src/test/resources/adapter-test/serialization-servlet/WEB-INF/keycloak.json
@@ -0,0 +1,10 @@
+{
+    "realm": "demo",
+    "resource": "serialization-servlet",
+    "auth-server-url": "http://localhost:8180/auth",
+    "ssl-required" : "external",
+    "expose-token": true,
+    "credentials": {
+        "secret": "password"
+    }
+}
diff --git a/testsuite/integration-arquillian/tests/base/src/test/resources/adapter-test/serialization-servlet/WEB-INF/web.xml b/testsuite/integration-arquillian/tests/base/src/test/resources/adapter-test/serialization-servlet/WEB-INF/web.xml
new file mode 100644
index 000000000000..e9b6913cf3cf
--- /dev/null
+++ b/testsuite/integration-arquillian/tests/base/src/test/resources/adapter-test/serialization-servlet/WEB-INF/web.xml
@@ -0,0 +1,76 @@
+
+
+
+
+
+    serialization-servlet
+
+    
+        Servlet
+        org.keycloak.testsuite.adapter.servlet.SerializationServlet
+    
+    
+        Error Servlet
+        org.keycloak.testsuite.adapter.servlet.ErrorServlet
+    
+
+    
+        Servlet
+        /*
+    
+
+    
+        Error Servlet
+        /error.html
+    
+
+    
+        
+            Users
+            /*
+        
+        
+            user
+        
+    
+    
+        
+            Errors
+            /error.html
+        
+    
+
+    
+        KEYCLOAK
+        demo
+        
+            /error.html
+            /error.html
+        
+    
+
+    
+        admin
+    
+    
+        user
+    
+

From f660adc9f820c28de7dce42b6fff2c3bf39684fb Mon Sep 17 00:00:00 2001
From: vmuzikar 
Date: Mon, 20 Jul 2020 09:08:28 +0200
Subject: [PATCH 23/30] KEYCLOAK-15585 OIDC redirect_uri allows dangerous
 schemes resulting in potential XSS

(cherry picked from commit e86bec81744707f270230b5da40e02a7aba17830)

Conflicts:
    testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/client/ClientRegistrationTest.java
    testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/ClientTest.java
    services/src/main/java/org/keycloak/validation/DefaultClientValidationProvider.java
---
 .../models/utils/RepresentationToModel.java   |   7 +-
 .../validation/ClientValidationContext.java   |  33 +--
 .../validation/ClientValidationProvider.java  |   7 +-
 .../validation/ClientValidationUtil.java      |  88 --------
 .../validation/DefaultValidationContext.java  |  77 +++++++
 .../validation/ValidationContext.java         |  39 ++++
 .../keycloak/validation/ValidationError.java  |  87 ++++++++
 .../keycloak/validation/ValidationResult.java |  69 ++++++
 .../keycloak/validation/ValidationUtil.java   |  56 +++++
 .../org/keycloak/validation/Validator.java    |  27 +++
 ...yDescriptorClientRegistrationProvider.java |   1 +
 .../AbstractClientRegistrationContext.java    |   6 -
 .../AbstractClientRegistrationProvider.java   |  52 ++---
 .../ClientRegistrationContext.java            |   3 -
 .../DefaultClientRegistrationContext.java     |   6 -
 .../DefaultClientRegistrationProvider.java    |   2 +
 .../oidc/OIDCClientRegistrationContext.java   |  24 ---
 .../oidc/OIDCClientRegistrationProvider.java  |   4 +
 .../resources/admin/ClientResource.java       |  27 +--
 .../resources/admin/ClientsResource.java      |  23 +-
 .../services/validation/ClientValidator.java  |  54 -----
 .../validation/PairwiseClientValidator.java   |  47 ----
 .../validation/ValidationMessage.java         | 100 ---------
 .../validation/ValidationMessages.java        |  89 --------
 .../DefaultClientValidationProvider.java      | 185 +++++++++++++---
 .../keycloak/testsuite/admin/ClientTest.java  | 202 ++++++++----------
 .../testsuite/authz/AuthorizationAPITest.java |   6 +-
 .../testsuite/authz/EntitlementAPITest.java   |  12 +-
 .../client/ClientRegistrationTest.java        | 135 +++++++++---
 .../admin/messages/messages_en.properties     |   7 +
 30 files changed, 781 insertions(+), 694 deletions(-)
 delete mode 100644 server-spi-private/src/main/java/org/keycloak/validation/ClientValidationUtil.java
 create mode 100644 server-spi-private/src/main/java/org/keycloak/validation/DefaultValidationContext.java
 create mode 100644 server-spi-private/src/main/java/org/keycloak/validation/ValidationContext.java
 create mode 100644 server-spi-private/src/main/java/org/keycloak/validation/ValidationError.java
 create mode 100644 server-spi-private/src/main/java/org/keycloak/validation/ValidationResult.java
 create mode 100644 server-spi-private/src/main/java/org/keycloak/validation/ValidationUtil.java
 create mode 100644 server-spi-private/src/main/java/org/keycloak/validation/Validator.java
 delete mode 100644 services/src/main/java/org/keycloak/services/validation/ClientValidator.java
 delete mode 100644 services/src/main/java/org/keycloak/services/validation/PairwiseClientValidator.java
 delete mode 100644 services/src/main/java/org/keycloak/services/validation/ValidationMessage.java
 delete mode 100644 services/src/main/java/org/keycloak/services/validation/ValidationMessages.java

diff --git a/server-spi-private/src/main/java/org/keycloak/models/utils/RepresentationToModel.java b/server-spi-private/src/main/java/org/keycloak/models/utils/RepresentationToModel.java
index f50de409856e..117064e1b0db 100755
--- a/server-spi-private/src/main/java/org/keycloak/models/utils/RepresentationToModel.java
+++ b/server-spi-private/src/main/java/org/keycloak/models/utils/RepresentationToModel.java
@@ -29,7 +29,6 @@
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.Set;
-import java.util.function.Function;
 import java.util.stream.Collectors;
 
 import org.jboss.logging.Logger;
@@ -136,7 +135,7 @@
 import org.keycloak.storage.UserStorageProviderModel;
 import org.keycloak.storage.federated.UserFederatedStorageProvider;
 import org.keycloak.util.JsonSerialization;
-import org.keycloak.validation.ClientValidationUtil;
+import org.keycloak.validation.ValidationUtil;
 
 public class RepresentationToModel {
 
@@ -1265,8 +1264,8 @@ private static Map createClients(KeycloakSession session, R
             ClientModel app = createClient(session, realm, resourceRep, false, mappedFlows);
             appMap.put(app.getClientId(), app);
 
-            ClientValidationUtil.validate(session, app, false, c -> {
-                throw new RuntimeException("Invalid client " + app.getClientId() + ": " + c.getError());
+            ValidationUtil.validateClient(session, app, false, r -> {
+                throw new RuntimeException("Invalid client " + app.getClientId() + ": " + r.getAllErrorsAsString());
             });
         }
         return appMap;
diff --git a/server-spi-private/src/main/java/org/keycloak/validation/ClientValidationContext.java b/server-spi-private/src/main/java/org/keycloak/validation/ClientValidationContext.java
index aba7f7a43199..d12d0cbb1858 100644
--- a/server-spi-private/src/main/java/org/keycloak/validation/ClientValidationContext.java
+++ b/server-spi-private/src/main/java/org/keycloak/validation/ClientValidationContext.java
@@ -1,5 +1,5 @@
 /*
- * Copyright 2019 Red Hat, Inc. and/or its affiliates
+ * Copyright 2020 Red Hat, Inc. and/or its affiliates
  * and other contributors as indicated by the @author tags.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -14,26 +14,31 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package org.keycloak.validation;
 
 import org.keycloak.models.ClientModel;
 import org.keycloak.models.KeycloakSession;
+import org.keycloak.representations.oidc.OIDCClientRepresentation;
 
-public interface ClientValidationContext {
-
-    enum Event {
-        CREATE,
-        UPDATE
+/**
+ * @author Vaclav Muzikar 
+ */
+public class ClientValidationContext extends DefaultValidationContext {
+    public ClientValidationContext(Event event, KeycloakSession session, ClientModel objectToValidate) {
+        super(event, session, objectToValidate);
     }
 
-    Event getEvent();
-
-    KeycloakSession getSession();
+    public static class OIDCContext extends ClientValidationContext {
+        private final OIDCClientRepresentation oidcClient;
 
-    ClientModel getClient();
-
-    String getError();
-
-    ClientValidationContext invalid(String error);
+        public OIDCContext(Event event, KeycloakSession session, ClientModel objectToValidate, OIDCClientRepresentation oidcClient) {
+            super(event, session, objectToValidate);
+            this.oidcClient = oidcClient;
+        }
 
+        public OIDCClientRepresentation getOIDCClient() {
+            return oidcClient;
+        }
+    }
 }
diff --git a/server-spi-private/src/main/java/org/keycloak/validation/ClientValidationProvider.java b/server-spi-private/src/main/java/org/keycloak/validation/ClientValidationProvider.java
index 347b44b17a2d..0f1b144488e0 100644
--- a/server-spi-private/src/main/java/org/keycloak/validation/ClientValidationProvider.java
+++ b/server-spi-private/src/main/java/org/keycloak/validation/ClientValidationProvider.java
@@ -16,11 +16,12 @@
  */
 package org.keycloak.validation;
 
-import org.keycloak.provider.Provider;
+import org.keycloak.models.ClientModel;
 
-public interface ClientValidationProvider extends Provider {
+public interface ClientValidationProvider extends Validator {
 
-    void validate(ClientValidationContext context);
+    // for a special case when performing OIDC client registration
+    ValidationResult validate(ClientValidationContext.OIDCContext validationContext);
 
     @Override
     default void close() {
diff --git a/server-spi-private/src/main/java/org/keycloak/validation/ClientValidationUtil.java b/server-spi-private/src/main/java/org/keycloak/validation/ClientValidationUtil.java
deleted file mode 100644
index beac8722b2b1..000000000000
--- a/server-spi-private/src/main/java/org/keycloak/validation/ClientValidationUtil.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Copyright 2019 Red Hat, Inc. and/or its affiliates
- * and other contributors as indicated by the @author tags.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.keycloak.validation;
-
-import org.keycloak.models.ClientModel;
-import org.keycloak.models.KeycloakSession;
-
-import javax.ws.rs.BadRequestException;
-
-public class ClientValidationUtil {
-
-    public static void validate(KeycloakSession session, ClientModel client, boolean create, ErrorHandler errorHandler) throws BadRequestException {
-        ClientValidationProvider provider = session.getProvider(ClientValidationProvider.class);
-        if (provider != null) {
-            DefaultClientValidationContext context = new DefaultClientValidationContext(create ? ClientValidationContext.Event.CREATE : ClientValidationContext.Event.UPDATE, session, client);
-            provider.validate(context);
-
-            if (!context.isValid()) {
-                errorHandler.onError(context);
-            }
-        }
-    }
-
-    public interface ErrorHandler {
-
-        void onError(ClientValidationContext context);
-
-    }
-
-    private static class DefaultClientValidationContext implements ClientValidationContext {
-
-        private Event event;
-        private KeycloakSession session;
-        private ClientModel client;
-
-        private String error;
-
-        public DefaultClientValidationContext(Event event, KeycloakSession session,  ClientModel client) {
-            this.event = event;
-            this.session = session;
-            this.client = client;
-        }
-
-        public boolean isValid() {
-            return error == null;
-        }
-
-        public String getError() {
-            return error;
-        }
-
-        @Override
-        public Event getEvent() {
-            return event;
-        }
-
-        @Override
-        public KeycloakSession getSession() {
-            return session;
-        }
-
-        @Override
-        public ClientModel getClient() {
-            return client;
-        }
-
-        @Override
-        public ClientValidationContext invalid(String error) {
-            this.error = error;
-            return this;
-        }
-    }
-
-}
diff --git a/server-spi-private/src/main/java/org/keycloak/validation/DefaultValidationContext.java b/server-spi-private/src/main/java/org/keycloak/validation/DefaultValidationContext.java
new file mode 100644
index 000000000000..27022158e991
--- /dev/null
+++ b/server-spi-private/src/main/java/org/keycloak/validation/DefaultValidationContext.java
@@ -0,0 +1,77 @@
+/*
+ * Copyright 2020 Red Hat, Inc. and/or its affiliates
+ * and other contributors as indicated by the @author tags.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.keycloak.validation;
+
+import org.keycloak.models.KeycloakSession;
+
+import java.util.HashSet;
+import java.util.Set;
+
+/**
+ * @author Vaclav Muzikar 
+ */
+public abstract class DefaultValidationContext implements ValidationContext {
+
+    private final Event event;
+    private final KeycloakSession session;
+    private final T objectToValidate;
+    private final Set errors;
+
+    public DefaultValidationContext(Event event, KeycloakSession session, T objectToValidate) {
+        this.event = event;
+        this.session = session;
+        this.objectToValidate = objectToValidate;
+        this.errors = new HashSet<>();
+    }
+
+    @Override
+    public Event getEvent() {
+        return event;
+    }
+
+    @Override
+    public KeycloakSession getSession() {
+        return session;
+    }
+
+    @Override
+    public T getObjectToValidate() {
+        return objectToValidate;
+    }
+
+    @Override
+    public ValidationContext addError(String message) {
+        return addError(null, message, null);
+    }
+
+    @Override
+    public ValidationContext addError(String fieldId, String message) {
+        return addError(fieldId, message, null);
+    }
+
+    @Override
+    public ValidationContext addError(String fieldId, String message, String localizedMessageKey, Object... localizedMessageParams) {
+        errors.add(new ValidationError(fieldId, message, localizedMessageKey, localizedMessageParams));
+        return this;
+    }
+
+    @Override
+    public ValidationResult toResult() {
+        return new ValidationResult(new HashSet<>(errors));
+    }
+}
diff --git a/server-spi-private/src/main/java/org/keycloak/validation/ValidationContext.java b/server-spi-private/src/main/java/org/keycloak/validation/ValidationContext.java
new file mode 100644
index 000000000000..6d1784bbf10a
--- /dev/null
+++ b/server-spi-private/src/main/java/org/keycloak/validation/ValidationContext.java
@@ -0,0 +1,39 @@
+/*
+ * Copyright 2019 Red Hat, Inc. and/or its affiliates
+ * and other contributors as indicated by the @author tags.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.keycloak.validation;
+
+import org.keycloak.models.KeycloakSession;
+
+public interface ValidationContext {
+
+    enum Event {
+        CREATE,
+        UPDATE
+    }
+
+    Event getEvent();
+
+    KeycloakSession getSession();
+
+    T getObjectToValidate();
+
+    ValidationContext addError(String message);
+    ValidationContext addError(String fieldId, String message);
+    ValidationContext addError(String fieldId, String message, String localizedMessageKey, Object... localizedMessageParams);
+
+    ValidationResult toResult();
+}
diff --git a/server-spi-private/src/main/java/org/keycloak/validation/ValidationError.java b/server-spi-private/src/main/java/org/keycloak/validation/ValidationError.java
new file mode 100644
index 000000000000..4be55895ca67
--- /dev/null
+++ b/server-spi-private/src/main/java/org/keycloak/validation/ValidationError.java
@@ -0,0 +1,87 @@
+/*
+ * Copyright 2020 Red Hat, Inc. and/or its affiliates
+ * and other contributors as indicated by the @author tags.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.keycloak.validation;
+
+import java.text.MessageFormat;
+import java.util.Arrays;
+import java.util.Objects;
+import java.util.Properties;
+
+/**
+ * @author Vaclav Muzikar 
+ */
+public class ValidationError {
+    private final String fieldId;
+    private final String message;
+    private final String localizedMessageKey;
+    private final Object[] localizedMessageParameters;
+
+    public ValidationError(String fieldId, String message, String localizedMessageKey, Object[] localizedMessageParameters) {
+        if (message == null) {
+            throw new IllegalArgumentException("Message must be set");
+        }
+
+        this.fieldId = fieldId;
+        this.message = message;
+        this.localizedMessageKey = localizedMessageKey;
+        this.localizedMessageParameters = localizedMessageParameters;
+    }
+
+    public String getFieldId() {
+        return fieldId;
+    }
+
+    public String getLocalizedMessageKey() {
+        return localizedMessageKey;
+    }
+
+    public Object[] getLocalizedMessageParams() {
+        return localizedMessageParameters;
+    }
+
+    public String getMessage() {
+        return message;
+    }
+
+    public String getLocalizedMessage(Properties messagesBundle) {
+        if (getLocalizedMessageKey() != null) {
+            return MessageFormat.format(messagesBundle.getProperty(getLocalizedMessageKey(), getMessage()), getLocalizedMessageParams());
+        }
+        else {
+            return getMessage();
+        }
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+        ValidationError error = (ValidationError) o;
+        return Objects.equals(fieldId, error.fieldId) &&
+                message.equals(error.message) &&
+                Objects.equals(localizedMessageKey, error.localizedMessageKey) &&
+                Arrays.equals(localizedMessageParameters, error.localizedMessageParameters);
+    }
+
+    @Override
+    public int hashCode() {
+        int result = Objects.hash(fieldId, message, localizedMessageKey);
+        result = 31 * result + Arrays.hashCode(localizedMessageParameters);
+        return result;
+    }
+}
diff --git a/server-spi-private/src/main/java/org/keycloak/validation/ValidationResult.java b/server-spi-private/src/main/java/org/keycloak/validation/ValidationResult.java
new file mode 100644
index 000000000000..dfd1ed94224b
--- /dev/null
+++ b/server-spi-private/src/main/java/org/keycloak/validation/ValidationResult.java
@@ -0,0 +1,69 @@
+/*
+ * Copyright 2020 Red Hat, Inc. and/or its affiliates
+ * and other contributors as indicated by the @author tags.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.keycloak.validation;
+
+import java.util.Collections;
+import java.util.Properties;
+import java.util.Set;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
+/**
+ * @author Vaclav Muzikar 
+ */
+public class ValidationResult {
+    private final boolean valid;
+    private final Set errors;
+
+    public ValidationResult(Set errors) {
+        this.valid = errors.size() == 0;
+        this.errors = Collections.unmodifiableSet(errors);
+    }
+
+    public boolean isValid() {
+        return valid;
+    }
+
+    public Set getErrors() {
+        return errors;
+    }
+
+    public String getAllErrorsAsString() {
+        return getAllErrorsAsString(ValidationError::getMessage);
+    }
+
+    public String getAllLocalizedErrorsAsString(Properties messagesBundle) {
+        return getAllErrorsAsString(x -> x.getLocalizedMessage(messagesBundle));
+    }
+
+    protected String getAllErrorsAsString(Function function) {
+        return errors.stream().map(function).collect(Collectors.joining("; "));
+    }
+
+    public boolean fieldHasError(String fieldId) {
+        if (fieldId == null) {
+            return false;
+        }
+        for (ValidationError error : errors) {
+            if (fieldId.equals(error.getFieldId())) {
+                return true;
+            }
+        }
+        return false;
+    }
+}
diff --git a/server-spi-private/src/main/java/org/keycloak/validation/ValidationUtil.java b/server-spi-private/src/main/java/org/keycloak/validation/ValidationUtil.java
new file mode 100644
index 000000000000..ee66ecaca89d
--- /dev/null
+++ b/server-spi-private/src/main/java/org/keycloak/validation/ValidationUtil.java
@@ -0,0 +1,56 @@
+/*
+ * Copyright 2019 Red Hat, Inc. and/or its affiliates
+ * and other contributors as indicated by the @author tags.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.keycloak.validation;
+
+import org.keycloak.models.ClientModel;
+import org.keycloak.models.KeycloakSession;
+import org.keycloak.representations.oidc.OIDCClientRepresentation;
+
+import javax.ws.rs.BadRequestException;
+
+public class ValidationUtil {
+
+    public static void validateClient(KeycloakSession session, ClientModel client, boolean create, ErrorHandler errorHandler) throws BadRequestException {
+        validateClient(session, client, null, create, errorHandler);
+    }
+
+    public static void validateClient(KeycloakSession session, ClientModel client, OIDCClientRepresentation oidcClient, boolean create, ErrorHandler errorHandler) throws BadRequestException {
+        ClientValidationProvider provider = session.getProvider(ClientValidationProvider.class);
+        if (provider != null) {
+            ValidationContext.Event event = create ? ValidationContext.Event.CREATE : ValidationContext.Event.UPDATE;
+            ValidationResult result;
+
+            if (oidcClient != null) {
+                result = provider.validate(new ClientValidationContext.OIDCContext(event, session, client, oidcClient));
+            }
+            else {
+                result = provider.validate(new ClientValidationContext(event, session, client));
+            }
+
+            if (!result.isValid()) {
+                errorHandler.onError(result);
+            }
+        }
+    }
+
+    public interface ErrorHandler {
+
+        void onError(ValidationResult context);
+
+    }
+
+}
diff --git a/server-spi-private/src/main/java/org/keycloak/validation/Validator.java b/server-spi-private/src/main/java/org/keycloak/validation/Validator.java
new file mode 100644
index 000000000000..46abf08a77ad
--- /dev/null
+++ b/server-spi-private/src/main/java/org/keycloak/validation/Validator.java
@@ -0,0 +1,27 @@
+/*
+ * Copyright 2020 Red Hat, Inc. and/or its affiliates
+ * and other contributors as indicated by the @author tags.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.keycloak.validation;
+
+import org.keycloak.provider.Provider;
+
+/**
+ * @author Vaclav Muzikar 
+ */
+public interface Validator extends Provider {
+    ValidationResult validate(ValidationContext validationContext);
+}
diff --git a/services/src/main/java/org/keycloak/protocol/saml/clientregistration/EntityDescriptorClientRegistrationProvider.java b/services/src/main/java/org/keycloak/protocol/saml/clientregistration/EntityDescriptorClientRegistrationProvider.java
index 5a284468fcc5..b49d0a6e71dc 100755
--- a/services/src/main/java/org/keycloak/protocol/saml/clientregistration/EntityDescriptorClientRegistrationProvider.java
+++ b/services/src/main/java/org/keycloak/protocol/saml/clientregistration/EntityDescriptorClientRegistrationProvider.java
@@ -46,6 +46,7 @@ public Response createSaml(String descriptor) {
         ClientRepresentation client = session.getProvider(ClientDescriptionConverter.class, EntityDescriptorDescriptionConverter.ID).convertToInternal(descriptor);
         EntityDescriptorClientRegistrationContext context = new EntityDescriptorClientRegistrationContext(session, client, this);
         client = create(context);
+        validateClient(client, true);
         URI uri = session.getContext().getUri().getAbsolutePathBuilder().path(client.getClientId()).build();
         return Response.created(uri).entity(client).build();
     }
diff --git a/services/src/main/java/org/keycloak/services/clientregistration/AbstractClientRegistrationContext.java b/services/src/main/java/org/keycloak/services/clientregistration/AbstractClientRegistrationContext.java
index f6bea930fc9b..0232c41a28c1 100644
--- a/services/src/main/java/org/keycloak/services/clientregistration/AbstractClientRegistrationContext.java
+++ b/services/src/main/java/org/keycloak/services/clientregistration/AbstractClientRegistrationContext.java
@@ -19,8 +19,6 @@
 
 import org.keycloak.models.KeycloakSession;
 import org.keycloak.representations.idm.ClientRepresentation;
-import org.keycloak.services.validation.ClientValidator;
-import org.keycloak.services.validation.ValidationMessages;
 
 /**
  * @author Marek Posolda
@@ -52,8 +50,4 @@ public ClientRegistrationProvider getProvider() {
         return provider;
     }
 
-    @Override
-    public boolean validateClient(ValidationMessages validationMessages) {
-        return ClientValidator.validate(client, validationMessages);
-    }
 }
diff --git a/services/src/main/java/org/keycloak/services/clientregistration/AbstractClientRegistrationProvider.java b/services/src/main/java/org/keycloak/services/clientregistration/AbstractClientRegistrationProvider.java
index 927a470064cf..a473b0aa2521 100755
--- a/services/src/main/java/org/keycloak/services/clientregistration/AbstractClientRegistrationProvider.java
+++ b/services/src/main/java/org/keycloak/services/clientregistration/AbstractClientRegistrationProvider.java
@@ -19,18 +19,22 @@
 
 import org.keycloak.events.EventBuilder;
 import org.keycloak.events.EventType;
-import org.keycloak.models.*;
+import org.keycloak.models.ClientInitialAccessModel;
+import org.keycloak.models.ClientModel;
+import org.keycloak.models.KeycloakSession;
+import org.keycloak.models.ModelDuplicateException;
+import org.keycloak.models.RealmModel;
 import org.keycloak.models.utils.ModelToRepresentation;
 import org.keycloak.models.utils.RepresentationToModel;
 import org.keycloak.representations.idm.ClientRepresentation;
+import org.keycloak.representations.oidc.OIDCClientRepresentation;
 import org.keycloak.services.ErrorResponseException;
 import org.keycloak.services.ForbiddenException;
 import org.keycloak.services.clientregistration.policy.ClientRegistrationPolicyManager;
 import org.keycloak.services.clientregistration.policy.RegistrationAuth;
 import org.keycloak.services.managers.ClientManager;
 import org.keycloak.services.managers.RealmManager;
-import org.keycloak.services.validation.ValidationMessages;
-import org.keycloak.validation.ClientValidationUtil;
+import org.keycloak.validation.ValidationUtil;
 
 import javax.ws.rs.core.Response;
 
@@ -54,16 +58,6 @@ public ClientRepresentation create(ClientRegistrationContext context) {
 
         RegistrationAuth registrationAuth = auth.requireCreate(context);
 
-        ValidationMessages validationMessages = new ValidationMessages();
-        if (!context.validateClient(validationMessages)) {
-            String errorCode = validationMessages.fieldHasError("redirectUris") ? ErrorCodes.INVALID_REDIRECT_URI : ErrorCodes.INVALID_CLIENT_METADATA;
-            throw new ErrorResponseException(
-                    errorCode,
-                    validationMessages.getStringMessages(),
-                    Response.Status.BAD_REQUEST
-            );
-        }
-
         try {
             RealmModel realm = session.getContext().getRealm();
             ClientModel clientModel = ClientManager.createClient(session, realm, client, true);
@@ -82,11 +76,6 @@ public ClientRepresentation create(ClientRegistrationContext context) {
 
             client.setSecret(clientModel.getSecret());
 
-            ClientValidationUtil.validate(session, clientModel, true, c -> {
-                session.getTransactionManager().setRollbackOnly();
-                throw  new ErrorResponseException(ErrorCodes.INVALID_CLIENT_METADATA, c.getError(), Response.Status.BAD_REQUEST);
-            });
-
             String registrationAccessToken = ClientRegistrationTokenUtils.updateRegistrationAccessToken(session, clientModel, registrationAuth);
             client.setRegistrationAccessToken(registrationAccessToken);
 
@@ -133,24 +122,9 @@ public ClientRepresentation update(String clientId, ClientRegistrationContext co
             throw new ErrorResponseException(ErrorCodes.INVALID_CLIENT_METADATA, "Client Identifier modified", Response.Status.BAD_REQUEST);
         }
 
-        ValidationMessages validationMessages = new ValidationMessages();
-        if (!context.validateClient(validationMessages)) {
-            String errorCode = validationMessages.fieldHasError("redirectUris") ? ErrorCodes.INVALID_REDIRECT_URI : ErrorCodes.INVALID_CLIENT_METADATA;
-            throw new ErrorResponseException(
-                    errorCode,
-                    validationMessages.getStringMessages(),
-                    Response.Status.BAD_REQUEST
-            );
-        }
-
         RepresentationToModel.updateClient(rep, client);
         RepresentationToModel.updateClientProtocolMappers(rep, client);
 
-        ClientValidationUtil.validate(session, client, false, c -> {
-            session.getTransactionManager().setRollbackOnly();
-            throw  new ErrorResponseException(ErrorCodes.INVALID_CLIENT_METADATA, c.getError(), Response.Status.BAD_REQUEST);
-        });
-
         rep = ModelToRepresentation.toRepresentation(client, session);
 
         if (auth.isRegistrationAccessToken()) {
@@ -178,6 +152,18 @@ public void delete(String clientId) {
         }
     }
 
+    public void validateClient(ClientModel clientModel, OIDCClientRepresentation oidcClient, boolean create) {
+        ValidationUtil.validateClient(session, clientModel, oidcClient, create, r -> {
+            session.getTransactionManager().setRollbackOnly();
+            String errorCode = r.fieldHasError("redirectUris") ? ErrorCodes.INVALID_REDIRECT_URI : ErrorCodes.INVALID_CLIENT_METADATA;
+            throw new ErrorResponseException(errorCode, r.getAllErrorsAsString(), Response.Status.BAD_REQUEST);
+        });
+    }
+
+    public void validateClient(ClientRepresentation clientRep, boolean create) {
+        validateClient(session.getContext().getRealm().getClientByClientId(clientRep.getClientId()), null, create);
+    }
+
     @Override
     public void setAuth(ClientRegistrationAuth auth) {
         this.auth = auth;
diff --git a/services/src/main/java/org/keycloak/services/clientregistration/ClientRegistrationContext.java b/services/src/main/java/org/keycloak/services/clientregistration/ClientRegistrationContext.java
index 0ccdb7b80cb0..d67079df93ad 100644
--- a/services/src/main/java/org/keycloak/services/clientregistration/ClientRegistrationContext.java
+++ b/services/src/main/java/org/keycloak/services/clientregistration/ClientRegistrationContext.java
@@ -19,7 +19,6 @@
 
 import org.keycloak.models.KeycloakSession;
 import org.keycloak.representations.idm.ClientRepresentation;
-import org.keycloak.services.validation.ValidationMessages;
 
 /**
  * @author Marek Posolda
@@ -32,6 +31,4 @@ public interface ClientRegistrationContext {
 
     ClientRegistrationProvider getProvider();
 
-    boolean validateClient(ValidationMessages validationMessages);
-
 }
diff --git a/services/src/main/java/org/keycloak/services/clientregistration/DefaultClientRegistrationContext.java b/services/src/main/java/org/keycloak/services/clientregistration/DefaultClientRegistrationContext.java
index 08aeaef702c0..685ed864167e 100644
--- a/services/src/main/java/org/keycloak/services/clientregistration/DefaultClientRegistrationContext.java
+++ b/services/src/main/java/org/keycloak/services/clientregistration/DefaultClientRegistrationContext.java
@@ -19,8 +19,6 @@
 
 import org.keycloak.models.KeycloakSession;
 import org.keycloak.representations.idm.ClientRepresentation;
-import org.keycloak.services.validation.PairwiseClientValidator;
-import org.keycloak.services.validation.ValidationMessages;
 
 /**
  * @author Marek Posolda
@@ -31,8 +29,4 @@ public DefaultClientRegistrationContext(KeycloakSession session, ClientRepresent
         super(session, client, provider);
     }
 
-    @Override
-    public boolean validateClient(ValidationMessages validationMessages) {
-        return super.validateClient(validationMessages) && PairwiseClientValidator.validate(session, client, validationMessages);
-    }
 }
diff --git a/services/src/main/java/org/keycloak/services/clientregistration/DefaultClientRegistrationProvider.java b/services/src/main/java/org/keycloak/services/clientregistration/DefaultClientRegistrationProvider.java
index de2a61516868..a0b484647ab7 100755
--- a/services/src/main/java/org/keycloak/services/clientregistration/DefaultClientRegistrationProvider.java
+++ b/services/src/main/java/org/keycloak/services/clientregistration/DefaultClientRegistrationProvider.java
@@ -48,6 +48,7 @@ public DefaultClientRegistrationProvider(KeycloakSession session) {
     public Response createDefault(ClientRepresentation client) {
         DefaultClientRegistrationContext context = new DefaultClientRegistrationContext(session, client, this);
         client = create(context);
+        validateClient(client, true);
         URI uri = session.getContext().getUri().getAbsolutePathBuilder().path(client.getClientId()).build();
         return Response.created(uri).entity(client).build();
     }
@@ -68,6 +69,7 @@ public Response getDefault(@PathParam("clientId") String clientId) {
     public Response updateDefault(@PathParam("clientId") String clientId, ClientRepresentation client) {
         DefaultClientRegistrationContext context = new DefaultClientRegistrationContext(session, client, this);
         client = update(clientId, context);
+        validateClient(client, false);
         return Response.ok(client).build();
     }
 
diff --git a/services/src/main/java/org/keycloak/services/clientregistration/oidc/OIDCClientRegistrationContext.java b/services/src/main/java/org/keycloak/services/clientregistration/oidc/OIDCClientRegistrationContext.java
index 9b9c5b414e0d..036de311662e 100644
--- a/services/src/main/java/org/keycloak/services/clientregistration/oidc/OIDCClientRegistrationContext.java
+++ b/services/src/main/java/org/keycloak/services/clientregistration/oidc/OIDCClientRegistrationContext.java
@@ -17,18 +17,11 @@
 
 package org.keycloak.services.clientregistration.oidc;
 
-import java.util.HashSet;
-import java.util.Set;
-
 import org.keycloak.models.KeycloakSession;
-import org.keycloak.protocol.oidc.utils.SubjectType;
 import org.keycloak.representations.idm.ClientRepresentation;
 import org.keycloak.representations.oidc.OIDCClientRepresentation;
 import org.keycloak.services.clientregistration.AbstractClientRegistrationContext;
 import org.keycloak.services.clientregistration.ClientRegistrationProvider;
-import org.keycloak.services.clientregistration.DefaultClientRegistrationContext;
-import org.keycloak.services.validation.PairwiseClientValidator;
-import org.keycloak.services.validation.ValidationMessages;
 
 /**
  * @author Marek Posolda
@@ -42,21 +35,4 @@ public OIDCClientRegistrationContext(KeycloakSession session, ClientRepresentati
         this.oidcRep = oidcRep;
     }
 
-    @Override
-    public boolean validateClient(ValidationMessages validationMessages) {
-        boolean valid = super.validateClient(validationMessages);
-
-        String rootUrl = client.getRootUrl();
-        Set redirectUris = new HashSet<>();
-        if (client.getRedirectUris() != null) redirectUris.addAll(client.getRedirectUris());
-
-        SubjectType subjectType = SubjectType.parse(oidcRep.getSubjectType());
-        String sectorIdentifierUri = oidcRep.getSectorIdentifierUri();
-
-        // If sector_identifier_uri is in oidc config, then always validate it
-        if (SubjectType.PAIRWISE == subjectType || (sectorIdentifierUri != null && !sectorIdentifierUri.isEmpty())) {
-            valid = valid && PairwiseClientValidator.validate(session, rootUrl, redirectUris, oidcRep.getSectorIdentifierUri(), validationMessages);
-        }
-        return valid;
-    }
 }
diff --git a/services/src/main/java/org/keycloak/services/clientregistration/oidc/OIDCClientRegistrationProvider.java b/services/src/main/java/org/keycloak/services/clientregistration/oidc/OIDCClientRegistrationProvider.java
index d2a03a16a4aa..6601aa2ae417 100755
--- a/services/src/main/java/org/keycloak/services/clientregistration/oidc/OIDCClientRegistrationProvider.java
+++ b/services/src/main/java/org/keycloak/services/clientregistration/oidc/OIDCClientRegistrationProvider.java
@@ -86,6 +86,8 @@ public Response createOIDC(OIDCClientRepresentation clientOIDC) {
             updatePairwiseSubMappers(clientModel, SubjectType.parse(clientOIDC.getSubjectType()), clientOIDC.getSectorIdentifierUri());
             updateClientRepWithProtocolMappers(clientModel, client);
 
+            validateClient(clientModel, clientOIDC, true);
+
             URI uri = session.getContext().getUri().getAbsolutePathBuilder().path(client.getClientId()).build();
             clientOIDC = DescriptionConverter.toExternalResponse(session, client, uri);
             clientOIDC.setClientIdIssuedAt(Time.currentTime());
@@ -122,6 +124,8 @@ public Response updateOIDC(@PathParam("clientId") String clientId, OIDCClientRep
             updatePairwiseSubMappers(clientModel, SubjectType.parse(clientOIDC.getSubjectType()), clientOIDC.getSectorIdentifierUri());
             updateClientRepWithProtocolMappers(clientModel, client);
 
+            validateClient(clientModel, clientOIDC, false);
+
             URI uri = session.getContext().getUri().getAbsolutePathBuilder().path(client.getClientId()).build();
             clientOIDC = DescriptionConverter.toExternalResponse(session, client, uri);
             return Response.ok(clientOIDC).build();
diff --git a/services/src/main/java/org/keycloak/services/resources/admin/ClientResource.java b/services/src/main/java/org/keycloak/services/resources/admin/ClientResource.java
index f59611e5019b..567ce955af9c 100755
--- a/services/src/main/java/org/keycloak/services/resources/admin/ClientResource.java
+++ b/services/src/main/java/org/keycloak/services/resources/admin/ClientResource.java
@@ -22,7 +22,6 @@
 import org.jboss.resteasy.spi.ResteasyProviderFactory;
 import org.keycloak.authorization.admin.AuthorizationService;
 import org.keycloak.common.ClientConnection;
-import org.keycloak.common.Profile;
 import org.keycloak.common.util.Time;
 import org.keycloak.events.Errors;
 import org.keycloak.events.admin.OperationType;
@@ -63,11 +62,8 @@
 import org.keycloak.services.resources.admin.permissions.AdminPermissionEvaluator;
 import org.keycloak.services.resources.admin.permissions.AdminPermissionManagement;
 import org.keycloak.services.resources.admin.permissions.AdminPermissions;
-import org.keycloak.services.validation.ClientValidator;
-import org.keycloak.services.validation.PairwiseClientValidator;
-import org.keycloak.services.validation.ValidationMessages;
-import org.keycloak.utils.ProfileHelper;
-import org.keycloak.validation.ClientValidationUtil;
+import org.keycloak.utils.ReservedCharValidator;
+import org.keycloak.validation.ValidationUtil;
 
 import javax.ws.rs.Consumes;
 import javax.ws.rs.DELETE;
@@ -87,10 +83,8 @@
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
-import java.util.Properties;
 
 import static java.lang.Boolean.TRUE;
-import org.keycloak.utils.ReservedCharValidator;
 
 
 /**
@@ -138,16 +132,6 @@ public ProtocolMappersResource getProtocolMappers() {
     public Response update(final ClientRepresentation rep) {
         auth.clients().requireConfigure(client);
 
-        ValidationMessages validationMessages = new ValidationMessages();
-        if (!ClientValidator.validate(rep, validationMessages) || !PairwiseClientValidator.validate(session, rep, validationMessages)) {
-            Properties messages = AdminRoot.getMessages(session, realm, auth.adminAuth().getToken().getLocale());
-            throw new ErrorResponseException(
-                    validationMessages.getStringMessages(),
-                    validationMessages.getStringMessages(messages),
-                    Response.Status.BAD_REQUEST
-            );
-        }
-
         try {
             session.clientPolicy().triggerOnEvent(new AdminClientUpdateContext(rep, auth.adminAuth(), client));
         } catch (ClientPolicyException cpe) {
@@ -157,9 +141,12 @@ public Response update(final ClientRepresentation rep) {
         try {
             updateClientFromRep(rep, client, session);
 
-            ClientValidationUtil.validate(session, client, false, c -> {
+            ValidationUtil.validateClient(session, client, false, r -> {
                 session.getTransactionManager().setRollbackOnly();
-                throw new ErrorResponseException(Errors.INVALID_INPUT ,c.getError(), Response.Status.BAD_REQUEST);
+                throw new ErrorResponseException(
+                        Errors.INVALID_INPUT,
+                        r.getAllLocalizedErrorsAsString(AdminRoot.getMessages(session, realm, auth.adminAuth().getToken().getLocale())),
+                        Response.Status.BAD_REQUEST);
             });
 
             adminEvent.operation(OperationType.UPDATE).resourcePath(session.getContext().getUri()).representation(rep).success();
diff --git a/services/src/main/java/org/keycloak/services/resources/admin/ClientsResource.java b/services/src/main/java/org/keycloak/services/resources/admin/ClientsResource.java
index f120b412d86e..766b2c994da5 100755
--- a/services/src/main/java/org/keycloak/services/resources/admin/ClientsResource.java
+++ b/services/src/main/java/org/keycloak/services/resources/admin/ClientsResource.java
@@ -40,10 +40,7 @@
 import org.keycloak.services.managers.ClientManager;
 import org.keycloak.services.managers.RealmManager;
 import org.keycloak.services.resources.admin.permissions.AdminPermissionEvaluator;
-import org.keycloak.services.validation.ClientValidator;
-import org.keycloak.services.validation.PairwiseClientValidator;
-import org.keycloak.services.validation.ValidationMessages;
-import org.keycloak.validation.ClientValidationUtil;
+import org.keycloak.validation.ValidationUtil;
 
 import javax.ws.rs.Consumes;
 import javax.ws.rs.DefaultValue;
@@ -60,7 +57,6 @@
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
-import java.util.Properties;
 
 import static java.lang.Boolean.TRUE;
 
@@ -179,16 +175,6 @@ private AuthorizationService getAuthorizationService(ClientModel clientModel) {
     public Response createClient(final ClientRepresentation rep) {
         auth.clients().requireManage();
 
-        ValidationMessages validationMessages = new ValidationMessages();
-        if (!ClientValidator.validate(rep, validationMessages) || !PairwiseClientValidator.validate(session, rep, validationMessages)) {
-            Properties messages = AdminRoot.getMessages(session, realm, auth.adminAuth().getToken().getLocale());
-            throw new ErrorResponseException(
-                    validationMessages.getStringMessages(),
-                    validationMessages.getStringMessages(messages),
-                    Response.Status.BAD_REQUEST
-            );
-        }
-
         try {
             session.clientPolicy().triggerOnEvent(new AdminClientRegisterContext(rep, auth.adminAuth()));
         } catch (ClientPolicyException cpe) {
@@ -220,9 +206,12 @@ public Response createClient(final ClientRepresentation rep) {
                 }
             }
 
-            ClientValidationUtil.validate(session, clientModel, true, c -> {
+            ValidationUtil.validateClient(session, clientModel, true, r -> {
                 session.getTransactionManager().setRollbackOnly();
-                throw new ErrorResponseException(Errors.INVALID_INPUT, c.getError(), Response.Status.BAD_REQUEST);
+                throw new ErrorResponseException(
+                        Errors.INVALID_INPUT,
+                        r.getAllLocalizedErrorsAsString(AdminRoot.getMessages(session, realm, auth.adminAuth().getToken().getLocale())),
+                        Response.Status.BAD_REQUEST);
             });
 
             return Response.created(session.getContext().getUri().getAbsolutePathBuilder().path(clientModel.getId()).build()).build();
diff --git a/services/src/main/java/org/keycloak/services/validation/ClientValidator.java b/services/src/main/java/org/keycloak/services/validation/ClientValidator.java
deleted file mode 100644
index 22290c5a12db..000000000000
--- a/services/src/main/java/org/keycloak/services/validation/ClientValidator.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- *
- *  * Copyright 2016 Red Hat, Inc. and/or its affiliates
- *  * and other contributors as indicated by the @author tags.
- *  *
- *  * Licensed under the Apache License, Version 2.0 (the "License");
- *  * you may not use this file except in compliance with the License.
- *  * You may obtain a copy of the License at
- *  *
- *  * http://www.apache.org/licenses/LICENSE-2.0
- *  *
- *  * Unless required by applicable law or agreed to in writing, software
- *  * distributed under the License is distributed on an "AS IS" BASIS,
- *  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  * See the License for the specific language governing permissions and
- *  * limitations under the License.
- *
- */
-
-package org.keycloak.services.validation;
-
-import org.keycloak.representations.idm.ClientRepresentation;
-
-/**
- * @author Vaclav Muzikar 
- */
-public class ClientValidator {
-    /**
-     * Checks if the Client's Redirect URIs doesn't contain any URI fragments (like http://example.org/auth#fragment)
-     *
-     * @see KEYCLOAK-3421
-     * @param client
-     * @param messages
-     * @return true if Redirect URIs doesn't contain any URI with fragments
-     */
-    public static boolean validate(ClientRepresentation client, ValidationMessages messages) {
-        boolean isValid = true;
-
-        if (client.getRedirectUris() != null) {
-            long urisWithFragmentCount = client.getRedirectUris().stream().filter(p -> p.contains("#")).count();
-            if (urisWithFragmentCount > 0) {
-                messages.add("redirectUris", "Redirect URIs must not contain an URI fragment", "clientRedirectURIsFragmentError");
-                isValid = false;
-            }
-        }
-
-        if (client.getRootUrl() != null && client.getRootUrl().contains("#")) {
-            messages.add("rootUrl", "Root URL must not contain an URL fragment", "clientRootURLFragmentError");
-            isValid = false;
-        }
-
-        return isValid;
-    }
-}
diff --git a/services/src/main/java/org/keycloak/services/validation/PairwiseClientValidator.java b/services/src/main/java/org/keycloak/services/validation/PairwiseClientValidator.java
deleted file mode 100644
index f502fae661d3..000000000000
--- a/services/src/main/java/org/keycloak/services/validation/PairwiseClientValidator.java
+++ /dev/null
@@ -1,47 +0,0 @@
-package org.keycloak.services.validation;
-
-import org.keycloak.models.KeycloakSession;
-import org.keycloak.protocol.ProtocolMapperConfigException;
-import org.keycloak.protocol.oidc.mappers.PairwiseSubMapperHelper;
-import org.keycloak.protocol.oidc.utils.PairwiseSubMapperUtils;
-import org.keycloak.protocol.oidc.utils.PairwiseSubMapperValidator;
-import org.keycloak.representations.idm.ClientRepresentation;
-import org.keycloak.representations.idm.ProtocolMapperRepresentation;
-
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-
-/**
- * @author Martin Hardselius
- */
-public class PairwiseClientValidator {
-
-    public static boolean validate(KeycloakSession session, ClientRepresentation client, ValidationMessages messages) {
-        String rootUrl = client.getRootUrl();
-        Set redirectUris = new HashSet<>();
-        boolean valid = true;
-
-        List foundPairwiseMappers = PairwiseSubMapperUtils.getPairwiseSubMappers(client);
-
-        for (ProtocolMapperRepresentation foundPairwise : foundPairwiseMappers) {
-            String sectorIdentifierUri = PairwiseSubMapperHelper.getSectorIdentifierUri(foundPairwise);
-            if (client.getRedirectUris() != null) redirectUris.addAll(client.getRedirectUris());
-            valid = valid && validate(session, rootUrl, redirectUris, sectorIdentifierUri, messages);
-        }
-
-        return true;
-    }
-
-    public static boolean validate(KeycloakSession session, String rootUrl, Set redirectUris, String sectorIdentifierUri, ValidationMessages messages) {
-        try {
-            PairwiseSubMapperValidator.validate(session, rootUrl, redirectUris, sectorIdentifierUri);
-        } catch (ProtocolMapperConfigException e) {
-            messages.add(e.getMessage(), e.getMessageKey());
-            return false;
-        }
-        return true;
-    }
-
-}
diff --git a/services/src/main/java/org/keycloak/services/validation/ValidationMessage.java b/services/src/main/java/org/keycloak/services/validation/ValidationMessage.java
deleted file mode 100644
index 7e4dac12a5b7..000000000000
--- a/services/src/main/java/org/keycloak/services/validation/ValidationMessage.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- *
- *  * Copyright 2016 Red Hat, Inc. and/or its affiliates
- *  * and other contributors as indicated by the @author tags.
- *  *
- *  * Licensed under the Apache License, Version 2.0 (the "License");
- *  * you may not use this file except in compliance with the License.
- *  * You may obtain a copy of the License at
- *  *
- *  * http://www.apache.org/licenses/LICENSE-2.0
- *  *
- *  * Unless required by applicable law or agreed to in writing, software
- *  * distributed under the License is distributed on an "AS IS" BASIS,
- *  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  * See the License for the specific language governing permissions and
- *  * limitations under the License.
- *
- */
-
-package org.keycloak.services.validation;
-
-import java.text.MessageFormat;
-import java.util.Properties;
-
-/**
- * @author Vaclav Muzikar 
- */
-public class ValidationMessage {
-    private String fieldId;
-    private String message;
-    private String localizedMessageKey;
-    private Object[] localizedMessageParameters;
-
-    public ValidationMessage(String message) {
-        this.message = message;
-    }
-
-    public ValidationMessage(String message, String localizedMessageKey, Object... localizedMessageParameters) {
-        this.message = message;
-        this.localizedMessageKey = localizedMessageKey;
-        this.localizedMessageParameters = localizedMessageParameters;
-    }
-
-    public String getFieldId() {
-        return fieldId;
-    }
-
-    public void setFieldId(String fieldId) {
-        this.fieldId = fieldId;
-    }
-
-    public String getLocalizedMessageKey() {
-        return localizedMessageKey;
-    }
-
-    public void setLocalizedMessageKey(String localizedMessageKey) {
-        this.localizedMessageKey = localizedMessageKey;
-    }
-
-    public Object[] getLocalizedMessageParameters() {
-        return localizedMessageParameters;
-    }
-
-    public void setLocalizedMessageParameters(Object[] localizedMessageParameters) {
-        this.localizedMessageParameters = localizedMessageParameters;
-    }
-
-    public String getMessage() {
-        return message;
-    }
-
-    public String getMessage(Properties localizedMessages) {
-        if (getLocalizedMessageKey() != null) {
-            return MessageFormat.format(localizedMessages.getProperty(getLocalizedMessageKey(), getMessage()), getLocalizedMessageParameters());
-        }
-        else {
-            return getMessage();
-        }
-    }
-
-    @Override
-    public boolean equals(Object o) {
-        if (this == o) return true;
-        if (o == null || getClass() != o.getClass()) return false;
-
-        ValidationMessage message1 = (ValidationMessage) o;
-
-        if (getFieldId() != null ? !getFieldId().equals(message1.getFieldId()) : message1.getFieldId() != null)
-            return false;
-        return getMessage() != null ? getMessage().equals(message1.getMessage()) : message1.getMessage() == null;
-
-    }
-
-    @Override
-    public int hashCode() {
-        int result = getFieldId() != null ? getFieldId().hashCode() : 0;
-        result = 31 * result + (getMessage() != null ? getMessage().hashCode() : 0);
-        return result;
-    }
-}
diff --git a/services/src/main/java/org/keycloak/services/validation/ValidationMessages.java b/services/src/main/java/org/keycloak/services/validation/ValidationMessages.java
deleted file mode 100644
index 82db3742c2ef..000000000000
--- a/services/src/main/java/org/keycloak/services/validation/ValidationMessages.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- *
- *  * Copyright 2016 Red Hat, Inc. and/or its affiliates
- *  * and other contributors as indicated by the @author tags.
- *  *
- *  * Licensed under the Apache License, Version 2.0 (the "License");
- *  * you may not use this file except in compliance with the License.
- *  * You may obtain a copy of the License at
- *  *
- *  * http://www.apache.org/licenses/LICENSE-2.0
- *  *
- *  * Unless required by applicable law or agreed to in writing, software
- *  * distributed under the License is distributed on an "AS IS" BASIS,
- *  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  * See the License for the specific language governing permissions and
- *  * limitations under the License.
- *
- */
-
-package org.keycloak.services.validation;
-
-import java.util.Collections;
-import java.util.LinkedHashSet;
-import java.util.Properties;
-import java.util.Set;
-import java.util.function.Function;
-import java.util.stream.Collectors;
-
-
-/**
- * @author Vaclav Muzikar 
- */
-public class ValidationMessages {
-    private Set messages = new LinkedHashSet<>();
-
-    public ValidationMessages() {}
-
-    public ValidationMessages(String... messages) {
-        for (String message : messages) {
-            add(message);
-        }
-    }
-
-    public void add(String message) {
-        messages.add(new ValidationMessage(message));
-    }
-
-    public void add(String message, String localizedMessageKey) {
-        messages.add(new ValidationMessage(message, localizedMessageKey));
-    }
-
-    public void add(String fieldId, String message, String localizedMessageKey) {
-        ValidationMessage validationMessage = new ValidationMessage(message, localizedMessageKey);
-        validationMessage.setFieldId(fieldId);
-        add(validationMessage);
-    }
-
-    public void add(ValidationMessage message) {
-        messages.add(message);
-    }
-
-    public boolean fieldHasError(String fieldId) {
-        if (fieldId == null) {
-            return false;
-        }
-        for (ValidationMessage message : messages) {
-            if (fieldId.equals(message.getFieldId())) {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    public Set getMessages() {
-        return Collections.unmodifiableSet(messages);
-    }
-
-    protected String getStringMessages(Function function) {
-        return messages.stream().map(function).collect(Collectors.joining("; "));
-    }
-
-    public String getStringMessages() {
-        return getStringMessages(ValidationMessage::getMessage);
-    }
-
-    public String getStringMessages(Properties localizedMessages) {
-        return getStringMessages(x -> x.getMessage(localizedMessages));
-    }
-}
diff --git a/services/src/main/java/org/keycloak/validation/DefaultClientValidationProvider.java b/services/src/main/java/org/keycloak/validation/DefaultClientValidationProvider.java
index 554c7a62cebf..12628df3c4f8 100644
--- a/services/src/main/java/org/keycloak/validation/DefaultClientValidationProvider.java
+++ b/services/src/main/java/org/keycloak/validation/DefaultClientValidationProvider.java
@@ -17,72 +17,189 @@
 package org.keycloak.validation;
 
 import org.keycloak.models.ClientModel;
+import org.keycloak.protocol.ProtocolMapperConfigException;
+import org.keycloak.protocol.oidc.mappers.PairwiseSubMapperHelper;
+import org.keycloak.protocol.oidc.utils.PairwiseSubMapperUtils;
+import org.keycloak.protocol.oidc.utils.PairwiseSubMapperValidator;
+import org.keycloak.protocol.oidc.utils.SubjectType;
+import org.keycloak.representations.idm.ProtocolMapperRepresentation;
+import org.keycloak.representations.oidc.OIDCClientRepresentation;
 import org.keycloak.services.util.ResolveRelative;
 
 import java.net.MalformedURLException;
 import java.net.URI;
 import java.net.URISyntaxException;
-import java.net.URL;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import static org.keycloak.models.utils.ModelToRepresentation.toRepresentation;
 
 public class DefaultClientValidationProvider implements ClientValidationProvider {
+    private enum FieldMessages {
+        ROOT_URL("rootUrl",
+                "Root URL is not a valid URL", "clientRootURLInvalid",
+                "Root URL must not contain an URL fragment", "clientRootURLFragmentError",
+                "Root URL uses an illegal scheme", "clientRootURLIllegalSchemeError"),
+
+        BASE_URL("baseUrl",
+                "Base URL is not a valid URL", "clientBaseURLInvalid",
+                null, null,
+                "Base URL uses an illegal scheme", "clientBaseURLIllegalSchemeError"),
+
+        REDIRECT_URIS("redirectUris",
+                "A redirect URI is not a valid URI", "clientRedirectURIsInvalid",
+                "Redirect URIs must not contain an URI fragment", "clientRedirectURIsFragmentError",
+                "A redirect URI uses an illegal scheme", "clientRedirectURIsIllegalSchemeError");
+
+        private String fieldId;
+
+        private String invalid;
+        private String invalidKey;
+
+        private String fragment;
+        private String fragmentKey;
+
+        private String scheme;
+        private String schemeKey;
+
+        FieldMessages(String fieldId, String invalid, String invalidKey, String fragment, String fragmentKey, String scheme, String schemeKey) {
+            this.fieldId = fieldId;
+            this.invalid = invalid;
+            this.invalidKey = invalidKey;
+            this.fragment = fragment;
+            this.fragmentKey = fragmentKey;
+            this.scheme = scheme;
+            this.schemeKey = schemeKey;
+        }
+
+        public String getFieldId() {
+            return fieldId;
+        }
+
+        public String getInvalid() {
+            return invalid;
+        }
 
-    private ClientValidationContext context;
+        public String getInvalidKey() {
+            return invalidKey;
+        }
+
+        public String getFragment() {
+            return fragment;
+        }
+
+        public String getFragmentKey() {
+            return fragmentKey;
+        }
+
+        public String getScheme() {
+            return scheme;
+        }
+
+        public String getSchemeKey() {
+            return schemeKey;
+        }
+    }
 
     // TODO Before adding more validation consider using a library for validation
     @Override
-    public void validate(ClientValidationContext context) {
-        this.context = context;
+    public ValidationResult validate(ValidationContext context) {
+        validateUrls(context);
+        validatePairwiseInClientModel(context);
 
-        try {
-            validate(context.getClient());
-        } catch (ValidationException e) {
-            context.invalid(e.getMessage());
-        }
+        return context.toResult();
     }
 
-    private void validate(ClientModel client) throws ValidationException {
+    @Override
+    public ValidationResult validate(ClientValidationContext.OIDCContext context) {
+        validateUrls(context);
+        validatePairwiseInOIDCClient(context);
+
+        return context.toResult();
+    }
+
+    private void validateUrls(ValidationContext context) {
+        ClientModel client = context.getObjectToValidate();
+
         // Use a fake URL for validating relative URLs as we may not be validating clients in the context of a request (import at startup)
         String authServerUrl = "https://localhost/auth";
 
-        String resolvedRootUrl = ResolveRelative.resolveRootUrl(authServerUrl, authServerUrl, client.getRootUrl());
-        String resolvedBaseUrl = ResolveRelative.resolveRelativeUri(authServerUrl, authServerUrl, resolvedRootUrl, client.getBaseUrl());
+        String rootUrl = ResolveRelative.resolveRootUrl(authServerUrl, authServerUrl, client.getRootUrl());
 
-        validateRootUrl(resolvedRootUrl);
-        validateBaseUrl(resolvedBaseUrl);
-    }
+        // don't need to use actual rootUrl here as it'd interfere with others URL validations
+        String baseUrl = ResolveRelative.resolveRelativeUri(authServerUrl, authServerUrl, authServerUrl, client.getBaseUrl());
 
-    private void validateRootUrl(String rootUrl) throws ValidationException {
-        if (rootUrl != null && !rootUrl.isEmpty()) {
-            basicHttpUrlCheck("rootUrl", rootUrl);
-        }
+        checkUri(FieldMessages.ROOT_URL, rootUrl, context, true, true);
+        checkUri(FieldMessages.BASE_URL, baseUrl, context, true, false);
+        client.getRedirectUris().stream()
+                .map(u -> ResolveRelative.resolveRelativeUri(authServerUrl, authServerUrl, rootUrl, u))
+                .forEach(u -> checkUri(FieldMessages.REDIRECT_URIS, u, context, false, true));
     }
 
-    private void validateBaseUrl(String baseUrl) throws ValidationException {
-        if (baseUrl != null && !baseUrl.isEmpty()) {
-            basicHttpUrlCheck("baseUrl", baseUrl);
+    private void checkUri(FieldMessages field, String url, ValidationContext context, boolean checkValidUrl, boolean checkFragment) {
+        if (url == null || url.isEmpty()) {
+            return;
         }
-    }
 
-    private void basicHttpUrlCheck(String field, String url) throws ValidationException {
-        boolean valid = true;
         try {
-            URI uri = new URL(url).toURI();
-            if (uri.getScheme() == null || uri.getScheme().isEmpty()) {
+            URI uri = new URI(url);
+
+            boolean valid = true;
+            if (uri.getScheme() != null && (uri.getScheme().equals("data") || uri.getScheme().equals("javascript"))) {
+                context.addError(field.getFieldId(), field.getScheme(), field.getSchemeKey());
                 valid = false;
             }
-        } catch (MalformedURLException | URISyntaxException e) {
-            valid = false;
+
+            // KEYCLOAK-3421
+            if (checkFragment && uri.getFragment() != null) {
+                context.addError(field.getFieldId(), field.getFragment(), field.getFragmentKey());
+                valid = false;
+            }
+
+            // Don't check if URL is valid if there are other problems with it; otherwise it could lead to duplicit errors.
+            // This cannot be moved higher because it acts on differently based on environment (e.g. sometimes it checks
+            // scheme, sometimes it doesn't).
+            if (checkValidUrl && valid) {
+                uri.toURL(); // throws an exception
+            }
+        }
+        catch (MalformedURLException | IllegalArgumentException | URISyntaxException e) {
+            context.addError(field.getFieldId(), field.getInvalid(), field.getInvalidKey());
+        }
+    }
+
+    private void validatePairwiseInClientModel(ValidationContext context) {
+        List foundPairwiseMappers = PairwiseSubMapperUtils.getPairwiseSubMappers(toRepresentation(context.getObjectToValidate(), context.getSession()));
+
+        for (ProtocolMapperRepresentation foundPairwise : foundPairwiseMappers) {
+            String sectorIdentifierUri = PairwiseSubMapperHelper.getSectorIdentifierUri(foundPairwise);
+            validatePairwise(context, sectorIdentifierUri);
         }
+    }
+
+    private void validatePairwiseInOIDCClient(ClientValidationContext.OIDCContext context) {
+        OIDCClientRepresentation oidcRep = context.getOIDCClient();
 
-        if (!valid) {
-            throw new ValidationException("Invalid URL in " + field);
+        SubjectType subjectType = SubjectType.parse(oidcRep.getSubjectType());
+        String sectorIdentifierUri = oidcRep.getSectorIdentifierUri();
+
+        // If sector_identifier_uri is in oidc config, then always validate it
+        if (SubjectType.PAIRWISE == subjectType || (sectorIdentifierUri != null && !sectorIdentifierUri.isEmpty())) {
+            validatePairwise(context, oidcRep.getSectorIdentifierUri());
         }
     }
 
-    class ValidationException extends Exception {
+    private void validatePairwise(ValidationContext context, String sectorIdentifierUri) {
+        ClientModel client = context.getObjectToValidate();
+        String rootUrl = client.getRootUrl();
+        Set redirectUris = new HashSet<>();
+        if (client.getRedirectUris() != null) redirectUris.addAll(client.getRedirectUris());
 
-        public ValidationException(String message) {
-            super(message, null, false, false);
+        try {
+            PairwiseSubMapperValidator.validate(context.getSession(), rootUrl, redirectUris, sectorIdentifierUri);
+        } catch (ProtocolMapperConfigException e) {
+            context.addError("pairWise", e.getMessage(), e.getMessageKey());
         }
     }
 
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/ClientTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/ClientTest.java
index 7f5642d63adc..ea5b0d42ae4d 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/ClientTest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/ClientTest.java
@@ -51,15 +51,19 @@
 import javax.ws.rs.NotFoundException;
 import javax.ws.rs.core.Response;
 import java.io.IOException;
+import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashSet;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 import java.util.Set;
 import java.util.stream.Collectors;
 
+import static java.util.Arrays.asList;
 import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.Matchers.containsInAnyOrder;
 import static org.junit.Assert.*;
 import org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude;
 import org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude.AuthServer;
@@ -104,90 +108,101 @@ public void createClientVerify() {
     }
 
     @Test
-    public void createClientValidation() {
-        ClientRepresentation rep = new ClientRepresentation();
-        rep.setClientId("my-app");
-        rep.setDescription("my-app description");
-        rep.setEnabled(true);
-
-        rep.setRootUrl("invalid");
-        createClientExpectingValidationError(rep, "Invalid URL in rootUrl");
-
-        rep.setRootUrl(null);
-        rep.setBaseUrl("invalid");
-        createClientExpectingValidationError(rep, "Invalid URL in baseUrl");
-
-        rep.setRootUrl(null);
-        rep.setBaseUrl("/valid");
-        createClientExpectingSuccessfulClientCreation(rep);
-
-        rep.setRootUrl("");
-        rep.setBaseUrl("/valid");
-        createClientExpectingSuccessfulClientCreation(rep);
+    public void testInvalidUrlClientValidation() {
+        testClientUriValidation("Root URL is not a valid URL",
+                "Base URL is not a valid URL",
+                null,
+                "invalid", "myapp://some-fake-app");
     }
 
     @Test
-    public void updateClientValidation() {
-        ClientRepresentation rep = createClient();
-
-        rep.setClientId("my-app");
-        rep.setDescription("my-app description");
-        rep.setEnabled(true);
-
-        rep.setRootUrl("invalid");
-        updateClientExpectingValidationError(rep, "Invalid URL in rootUrl");
-
-        rep.setRootUrl(null);
-        rep.setBaseUrl("invalid");
-        updateClientExpectingValidationError(rep, "Invalid URL in baseUrl");
-
-        ClientRepresentation stored = realm.clients().get(rep.getId()).toRepresentation();
-        assertNull(stored.getRootUrl());
-        assertNull(stored.getBaseUrl());
+    public void testIllegalSchemeClientValidation() {
+        testClientUriValidation("Root URL uses an illegal scheme",
+                "Base URL uses an illegal scheme",
+                "A redirect URI uses an illegal scheme",
+                "data:text/html;base64,PHNjcmlwdD5jb25maXJtKGRvY3VtZW50LmRvbWFpbik7PC9zY3JpcHQ+",
+                "javascript:confirm(document.domain)/*"
+        );
+    }
 
-        rep.setRootUrl(null);
-        rep.setBaseUrl("/valid");
-        updateClientExpectingSuccessfulClientUpdate(rep, null, "/valid");
+    // KEYCLOAK-3421
+    @Test
+    public void testFragmentProhibitedClientValidation() {
+        testClientUriValidation("Root URL must not contain an URL fragment",
+                null,
+                "Redirect URIs must not contain an URI fragment",
+                "http://redhat.com/abcd#someFragment"
+        );
+    }
 
-        rep.setRootUrl("");
-        rep.setBaseUrl("/valid");
-        updateClientExpectingSuccessfulClientUpdate(rep, "", "/valid");
+    private void testClientUriValidation(String expectedRootUrlError, String expectedBaseUrlError, String expectedRedirectUrisError, String... testUrls) {
+        testClientUriValidation(false, expectedRootUrlError, expectedBaseUrlError, expectedRedirectUrisError, testUrls);
+        testClientUriValidation(true, expectedRootUrlError, expectedBaseUrlError, expectedRedirectUrisError, testUrls);
     }
 
-    private void createClientExpectingValidationError(ClientRepresentation rep, String expectedError) {
-        Response response = realm.clients().create(rep);
+    private void testClientUriValidation(boolean create, String expectedRootUrlError, String expectedBaseUrlError, String expectedRedirectUrisError, String... testUrls) {
+        ClientRepresentation rep;
+        if (create) {
+            rep = new ClientRepresentation();
+            rep.setClientId("my-app2");
+            rep.setEnabled(true);
+        }
+        else {
+            rep = createClient();
+        }
 
-        assertEquals(400, response.getStatus());
-        OAuth2ErrorRepresentation error = response.readEntity(OAuth2ErrorRepresentation.class);
-        assertEquals("invalid_input", error.getError());
-        assertEquals(expectedError, error.getErrorDescription());
+        for (String testUrl : testUrls) {
+            if (expectedRootUrlError != null) {
+                rep.setRootUrl(testUrl);
+                createOrUpdateClientExpectingValidationErrors(rep, create, expectedRootUrlError);
+            }
+            rep.setRootUrl(null);
 
-        assertNull(response.getLocation());
+            if (expectedBaseUrlError != null) {
+                rep.setBaseUrl(testUrl);
+                createOrUpdateClientExpectingValidationErrors(rep, create, expectedBaseUrlError);
+            }
+            rep.setBaseUrl(null);
 
-        response.close();
-    }
+            if (expectedRedirectUrisError != null) {
+                rep.setRedirectUris(Collections.singletonList(testUrl));
+                createOrUpdateClientExpectingValidationErrors(rep, create, expectedRedirectUrisError);
+            }
+            rep.setRedirectUris(null);
 
-    private void createClientExpectingSuccessfulClientCreation(ClientRepresentation rep) {
-        Response response = realm.clients().create(rep);
-        assertEquals(201, response.getStatus());
+            if (expectedRootUrlError != null) rep.setRootUrl(testUrl);
+            if (expectedBaseUrlError != null) rep.setBaseUrl(testUrl);
+            if (expectedRedirectUrisError != null) rep.setRedirectUris(Collections.singletonList(testUrl));
+            createOrUpdateClientExpectingValidationErrors(rep, create, expectedRootUrlError, expectedBaseUrlError, expectedRedirectUrisError);
 
-        String id = ApiUtil.getCreatedId(response);
-        realm.clients().get(id).remove();
-
-        response.close();
+            rep.setRootUrl(null);
+            rep.setBaseUrl(null);
+            rep.setRedirectUris(null);
+        }
     }
 
-    private void updateClientExpectingValidationError(ClientRepresentation rep, String expectedError) {
-        try {
-            realm.clients().get(rep.getId()).update(rep);
-            fail("Expected exception");
-        } catch (BadRequestException e) {
-            Response response = e.getResponse();
-            assertEquals(400, response.getStatus());
-            OAuth2ErrorRepresentation error = response.readEntity(OAuth2ErrorRepresentation.class);
-            assertEquals("invalid_input", error.getError());
-            assertEquals(expectedError, error.getErrorDescription());
+    private void createOrUpdateClientExpectingValidationErrors(ClientRepresentation rep, boolean create, String... expectedErrors) {
+        Response response = null;
+        if (create) {
+            response = realm.clients().create(rep);
         }
+        else {
+            try {
+                realm.clients().get(rep.getId()).update(rep);
+                fail("Expected exception");
+            }
+            catch (BadRequestException e) {
+                response = e.getResponse();
+            }
+        }
+
+        expectedErrors = Arrays.stream(expectedErrors).filter(Objects::nonNull).toArray(String[]::new);
+
+        assertEquals(response.getStatus(), 400);
+        OAuth2ErrorRepresentation errorRep = response.readEntity(OAuth2ErrorRepresentation.class);
+        List actualErrors = asList(errorRep.getErrorDescription().split("; "));
+        assertThat(actualErrors, containsInAnyOrder(expectedErrors));
+        assertEquals("invalid_input", errorRep.getError());
     }
 
     private void updateClientExpectingSuccessfulClientUpdate(ClientRepresentation rep, String expectedRootUrl, String expectedBaseUrl) {
@@ -369,55 +384,6 @@ public void serviceAccount() {
         assertNull(userRep.getEmail());
     }
 
-    // KEYCLOAK-3421
-    @Test
-    public void createClientWithFragments() {
-        ClientRepresentation client = ClientBuilder.create()
-                .clientId("client-with-fragment")
-                .rootUrl("http://localhost/base#someFragment")
-                .redirectUris("http://localhost/auth", "http://localhost/auth#fragment", "http://localhost/auth*", "/relative")
-                .build();
-
-        Response response = realm.clients().create(client);
-        assertUriFragmentError(response);
-    }
-
-    // KEYCLOAK-3421
-    @Test
-    public void updateClientWithFragments() {
-        ClientRepresentation client = ClientBuilder.create()
-                .clientId("client-with-fragment")
-                .redirectUris("http://localhost/auth", "http://localhost/auth*")
-                .build();
-        Response response = realm.clients().create(client);
-        String clientUuid = ApiUtil.getCreatedId(response);
-        ClientResource clientResource = realm.clients().get(clientUuid);
-        getCleanup().addClientUuid(clientUuid);
-        response.close();
-
-        client = clientResource.toRepresentation();
-        client.setRootUrl("http://localhost/base#someFragment");
-        List redirectUris = client.getRedirectUris();
-        redirectUris.add("http://localhost/auth#fragment");
-        redirectUris.add("/relative");
-        client.setRedirectUris(redirectUris);
-
-        try {
-            clientResource.update(client);
-            fail("Should fail");
-        }
-        catch (BadRequestException e) {
-            assertUriFragmentError(e.getResponse());
-        }
-    }
-
-    private void assertUriFragmentError(Response response) {
-        assertEquals(response.getStatus(), 400);
-        String error = response.readEntity(OAuth2ErrorRepresentation.class).getError();
-        assertTrue("Error response doesn't mention Redirect URIs fragments", error.contains("Redirect URIs must not contain an URI fragment"));
-        assertTrue("Error response doesn't mention Root URL fragments", error.contains("Root URL must not contain an URL fragment"));
-    }
-
     @Test
     public void pushRevocation() {
         testingClient.testApp().clearAdminActions();
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/authz/AuthorizationAPITest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/authz/AuthorizationAPITest.java
index c58b0572c44f..7784d99a028f 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/authz/AuthorizationAPITest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/authz/AuthorizationAPITest.java
@@ -20,6 +20,7 @@
 import static org.junit.Assert.assertNotNull;
 
 import java.io.IOException;
+import java.util.Collections;
 import java.util.List;
 
 import javax.ws.rs.core.Response;
@@ -44,6 +45,7 @@
 import org.keycloak.testsuite.Assert;
 import org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude;
 import org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude.AuthServer;
+import org.keycloak.testsuite.client.resources.TestApplicationResourceUrls;
 import org.keycloak.testsuite.util.ClientBuilder;
 import org.keycloak.testsuite.util.OAuthClient;
 import org.keycloak.testsuite.util.RealmBuilder;
@@ -83,7 +85,7 @@ public void addTestRealms(List testRealms) {
                     .redirectUris("http://localhost/resource-server-test")
                     .defaultRoles("uma_protection")
                     .directAccessGrants()
-                    .pairwise("http://pairwise.com"))
+                    .pairwise(TestApplicationResourceUrls.pairwiseSectorIdentifierUri()))
                 .client(ClientBuilder.create().clientId(TEST_CLIENT)
                     .secret("secret")
                     .authorizationServicesEnabled(true)
@@ -95,6 +97,8 @@ public void addTestRealms(List testRealms) {
                         .redirectUris("http://localhost/test-client")
                         .directAccessGrants())
                 .build());
+
+        testingClient.testApp().oidcClientEndpoints().setSectorIdentifierRedirectUris(Collections.singletonList("http://localhost/resource-server-test"));
     }
 
     @Before
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/authz/EntitlementAPITest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/authz/EntitlementAPITest.java
index ce8665c46586..d4dcb1f9e95e 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/authz/EntitlementAPITest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/authz/EntitlementAPITest.java
@@ -93,6 +93,7 @@
 import org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude;
 import org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude.AuthServer;
 import org.keycloak.testsuite.admin.ApiUtil;
+import org.keycloak.testsuite.client.resources.TestApplicationResourceUrls;
 import org.keycloak.testsuite.util.ClientBuilder;
 import org.keycloak.testsuite.util.OAuthClient;
 import org.keycloak.testsuite.util.RealmBuilder;
@@ -142,7 +143,7 @@ public void addTestRealms(List testRealms) {
                         .authorizationServicesEnabled(true)
                         .redirectUris("http://localhost/resource-server-test")
                         .defaultRoles("uma_protection")
-                        .pairwise("http://pairwise.com")
+                        .pairwise(TestApplicationResourceUrls.pairwiseSectorIdentifierUri())
                         .directAccessGrants())
                 .client(ClientBuilder.create().clientId(TEST_CLIENT)
                         .secret("secret")
@@ -153,13 +154,19 @@ public void addTestRealms(List testRealms) {
                         .secret("secret")
                         .authorizationServicesEnabled(true)
                         .redirectUris("http://localhost/test-client")
-                        .pairwise("http://pairwise.com")
+                        .pairwise(TestApplicationResourceUrls.pairwiseSectorIdentifierUri())
                         .directAccessGrants())
                 .client(ClientBuilder.create().clientId(PUBLIC_TEST_CLIENT)
                         .secret("secret")
                         .redirectUris("http://localhost:8180/auth/realms/master/app/auth/*", "https://localhost:8543/auth/realms/master/app/auth/*")
                         .publicClient())
                 .build());
+
+        configureSectorIdentifierRedirectUris();
+    }
+
+    private void configureSectorIdentifierRedirectUris() {
+        testingClient.testApp().oidcClientEndpoints().setSectorIdentifierRedirectUris(Arrays.asList("http://localhost/resource-server-test", "http://localhost/test-client"));
     }
 
     @Before
@@ -1936,6 +1943,7 @@ public void testOfflineRequestingPartyToken() throws Exception {
         controller.stop(suiteContext.getAuthServerInfo().getQualifier());
         controller.start(suiteContext.getAuthServerInfo().getQualifier());
         reconnectAdminClient();
+        configureSectorIdentifierRedirectUris();
 
         TokenIntrospectionResponse introspectionResponse = authzClient.protection().introspectRequestingPartyToken(response.getToken());
 
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/client/ClientRegistrationTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/client/ClientRegistrationTest.java
index 50f837e4db66..81ca0373c0e8 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/client/ClientRegistrationTest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/client/ClientRegistrationTest.java
@@ -28,14 +28,19 @@
 import org.keycloak.representations.idm.ProtocolMapperRepresentation;
 import org.keycloak.representations.idm.UserRepresentation;
 import org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude;
-import org.keycloak.services.clientregistration.ErrorCodes;
+import org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude.AuthServer;
 import org.keycloak.util.JsonSerialization;
 
 import javax.ws.rs.NotFoundException;
 import java.io.IOException;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Collections;
+import java.util.List;
+import java.util.Objects;
 
+import static java.util.Arrays.asList;
+import static org.hamcrest.Matchers.containsInAnyOrder;
 import static org.hamcrest.Matchers.nullValue;
 import static org.hamcrest.core.Is.is;
 import static org.junit.Assert.assertEquals;
@@ -43,7 +48,8 @@
 import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertThat;
 import static org.junit.Assert.fail;
-import org.keycloak.testsuite.arquillian.annotation.AuthServerContainerExclude.AuthServer;
+import static org.keycloak.services.clientregistration.ErrorCodes.INVALID_CLIENT_METADATA;
+import static org.keycloak.services.clientregistration.ErrorCodes.INVALID_REDIRECT_URI;
 
 /**
  * @author Stian Thorgersen
@@ -161,45 +167,112 @@ public void registerClientWithNonAsciiChars() throws ClientRegistrationException
     }
 
     @Test
-    public void registerClientValidation() throws IOException {
-    	authCreateClients();
-    	ClientRepresentation client = buildClient();
-    	client.setRootUrl("invalid");
-
-    	try {
-            registerClient(client);
-        } catch (ClientRegistrationException e) {
-            HttpErrorException c = (HttpErrorException) e.getCause();
-            assertEquals(400, c.getStatusLine().getStatusCode());
-
-            OAuth2ErrorRepresentation error = JsonSerialization.readValue(c.getErrorResponse(), OAuth2ErrorRepresentation.class);
+    public void testInvalidUrlClientValidation() {
+        testClientUriValidation("Root URL is not a valid URL",
+                "Base URL is not a valid URL",
+                null,
+                "invalid", "myapp://some-fake-app");
+    }
 
-            assertEquals("invalid_client_metadata", error.getError());
-            assertEquals("Invalid URL in rootUrl", error.getErrorDescription());
-        }
+    @Test
+    public void testIllegalSchemeClientValidation() {
+        testClientUriValidation("Root URL uses an illegal scheme",
+                "Base URL uses an illegal scheme",
+                "A redirect URI uses an illegal scheme",
+                "data:text/html;base64,PHNjcmlwdD5jb25maXJtKGRvY3VtZW50LmRvbWFpbik7PC9zY3JpcHQ+",
+                "javascript:confirm(document.domain)/*"
+        );
     }
 
+    // KEYCLOAK-3421
     @Test
-    public void updateClientValidation() throws IOException, ClientRegistrationException {
-        registerClientAsAdmin();
+    public void testFragmentProhibitedClientValidation() {
+        testClientUriValidation("Root URL must not contain an URL fragment",
+                null,
+                "Redirect URIs must not contain an URI fragment",
+                "http://redhat.com/abcd#someFragment"
+        );
+    }
 
-        ClientRepresentation client = reg.get(CLIENT_ID);
-        client.setRootUrl("invalid");
+    private void testClientUriValidation(String expectedRootUrlError, String expectedBaseUrlError, String expectedRedirectUrisError, String... testUrls) {
+        testClientUriValidation(true, expectedRootUrlError, expectedBaseUrlError, expectedRedirectUrisError, testUrls);
+        testClientUriValidation(false, expectedRootUrlError, expectedBaseUrlError, expectedRedirectUrisError, testUrls);
+    }
 
-    	try {
-            reg.update(client);
-        } catch (ClientRegistrationException e) {
-            HttpErrorException c = (HttpErrorException) e.getCause();
-            assertEquals(400, c.getStatusLine().getStatusCode());
+    private void testClientUriValidation(boolean register, String expectedRootUrlError, String expectedBaseUrlError, String expectedRedirectUrisError, String... testUrls) {
+        ClientRepresentation rep;
+        if (register) {
+            authCreateClients();
+            rep = buildClient();
+        }
+        else {
+            try {
+                registerClientAsAdmin();
+                rep = reg.get(CLIENT_ID);
+            }
+            catch (ClientRegistrationException e) {
+                throw new RuntimeException(e);
+            }
+        }
 
-            OAuth2ErrorRepresentation error = JsonSerialization.readValue(c.getErrorResponse(), OAuth2ErrorRepresentation.class);
+        for (String testUrl : testUrls) {
+            if (expectedRootUrlError != null) {
+                rep.setRootUrl(testUrl);
+                registerOrUpdateClientExpectingValidationErrors(rep, register, false, expectedRootUrlError);
+            }
+            rep.setRootUrl(null);
+
+            if (expectedBaseUrlError != null) {
+                rep.setBaseUrl(testUrl);
+                registerOrUpdateClientExpectingValidationErrors(rep, register, false, expectedBaseUrlError);
+            }
+            rep.setBaseUrl(null);
+
+            if (expectedRedirectUrisError != null) {
+                rep.setRedirectUris(Collections.singletonList(testUrl));
+                registerOrUpdateClientExpectingValidationErrors(rep, register, true, expectedRedirectUrisError);
+            }
+            rep.setRedirectUris(null);
+
+            if (expectedRootUrlError != null) rep.setRootUrl(testUrl);
+            if (expectedBaseUrlError != null) rep.setBaseUrl(testUrl);
+            if (expectedRedirectUrisError != null) rep.setRedirectUris(Collections.singletonList(testUrl));
+            registerOrUpdateClientExpectingValidationErrors(rep, register, expectedRedirectUrisError != null, expectedRootUrlError, expectedBaseUrlError, expectedRedirectUrisError);
+
+            rep.setRootUrl(null);
+            rep.setBaseUrl(null);
+            rep.setRedirectUris(null);
+        }
+    }
 
-            assertEquals("invalid_client_metadata", error.getError());
-            assertEquals("Invalid URL in rootUrl", error.getErrorDescription());
+    private void registerOrUpdateClientExpectingValidationErrors(ClientRepresentation rep, boolean register, boolean redirectUris, String... expectedErrors) {
+        HttpErrorException errorException = null;
+        try {
+            if (register) {
+                registerClient(rep);
+            }
+            else {
+                reg.update(rep);
+            }
+            fail("Expected exception");
+        }
+        catch (ClientRegistrationException e) {
+            errorException = (HttpErrorException) e.getCause();
         }
 
-        ClientRepresentation updatedClient = reg.get(CLIENT_ID);
-        assertNull(updatedClient.getRootUrl());
+        expectedErrors = Arrays.stream(expectedErrors).filter(Objects::nonNull).toArray(String[]::new);
+
+        assertEquals(errorException.getStatusLine().getStatusCode(), 400);
+        OAuth2ErrorRepresentation errorRep;
+        try {
+            errorRep = JsonSerialization.readValue(errorException.getErrorResponse(), OAuth2ErrorRepresentation.class);
+        }
+        catch (IOException e) {
+            throw new RuntimeException(e);
+        }
+        List actualErrors = asList(errorRep.getErrorDescription().split("; "));
+        assertThat(actualErrors, containsInAnyOrder(expectedErrors));
+        assertEquals(redirectUris ? INVALID_REDIRECT_URI : INVALID_CLIENT_METADATA, errorRep.getError());
     }
 
     @Test
diff --git a/themes/src/main/resources/theme/base/admin/messages/messages_en.properties b/themes/src/main/resources/theme/base/admin/messages/messages_en.properties
index 6a870247dd0b..c9bf2ecb291f 100644
--- a/themes/src/main/resources/theme/base/admin/messages/messages_en.properties
+++ b/themes/src/main/resources/theme/base/admin/messages/messages_en.properties
@@ -22,6 +22,13 @@ ldapErrorMissingGroupsPathGroup=Groups path group does not exist - please create
 
 clientRedirectURIsFragmentError=Redirect URIs must not contain an URI fragment
 clientRootURLFragmentError=Root URL must not contain an URL fragment
+clientRootURLIllegalSchemeError=Root URL uses an illegal scheme
+clientBaseURLIllegalSchemeError=Base URL uses an illegal scheme
+clientRedirectURIsIllegalSchemeError=A redirect URI uses an illegal scheme
+clientBaseURLInvalid=Base URL is not a valid URL
+clientRootURLInvalid=Root URL is not a valid URL
+clientRedirectURIsInvalid=A redirect URI is not a valid URI
+
 
 pairwiseMalformedClientRedirectURI=Client contained an invalid redirect URI.
 pairwiseClientRedirectURIsMissingHost=Client redirect URIs must contain a valid host component.

From da186af13d137f6ba7604b685cc8d0df3382494d Mon Sep 17 00:00:00 2001
From: keycloak-bot 
Date: Thu, 5 Nov 2020 12:20:56 +0000
Subject: [PATCH 24/30] Set version to 11.0.3

---
 adapters/oidc/adapter-core/pom.xml                            | 2 +-
 adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml                | 2 +-
 adapters/oidc/as7-eap6/as7-adapter/pom.xml                    | 2 +-
 adapters/oidc/as7-eap6/as7-subsystem/pom.xml                  | 2 +-
 adapters/oidc/as7-eap6/pom.xml                                | 2 +-
 adapters/oidc/fuse7/camel-undertow/pom.xml                    | 2 +-
 adapters/oidc/fuse7/jetty94/pom.xml                           | 2 +-
 adapters/oidc/fuse7/pom.xml                                   | 2 +-
 adapters/oidc/fuse7/tomcat8/pom.xml                           | 2 +-
 adapters/oidc/fuse7/undertow/pom.xml                          | 2 +-
 adapters/oidc/installed/pom.xml                               | 2 +-
 adapters/oidc/jaxrs-oauth-client/pom.xml                      | 2 +-
 adapters/oidc/jetty/jetty-core/pom.xml                        | 2 +-
 adapters/oidc/jetty/jetty9.2/pom.xml                          | 2 +-
 adapters/oidc/jetty/jetty9.3/pom.xml                          | 2 +-
 adapters/oidc/jetty/jetty9.4/pom.xml                          | 2 +-
 adapters/oidc/jetty/pom.xml                                   | 2 +-
 adapters/oidc/js/pom.xml                                      | 2 +-
 adapters/oidc/kcinit/pom.xml                                  | 2 +-
 adapters/oidc/osgi-adapter/pom.xml                            | 2 +-
 adapters/oidc/pom.xml                                         | 2 +-
 adapters/oidc/servlet-filter/pom.xml                          | 2 +-
 adapters/oidc/spring-boot-adapter-core/pom.xml                | 2 +-
 adapters/oidc/spring-boot-container-bundle/pom.xml            | 2 +-
 adapters/oidc/spring-boot-legacy-container-bundle/pom.xml     | 2 +-
 adapters/oidc/spring-boot/pom.xml                             | 2 +-
 adapters/oidc/spring-boot2/pom.xml                            | 2 +-
 adapters/oidc/spring-security/pom.xml                         | 2 +-
 adapters/oidc/tomcat/pom.xml                                  | 2 +-
 adapters/oidc/tomcat/tomcat-core/pom.xml                      | 2 +-
 adapters/oidc/tomcat/tomcat/pom.xml                           | 2 +-
 adapters/oidc/tomcat/tomcat7/pom.xml                          | 2 +-
 adapters/oidc/undertow/pom.xml                                | 2 +-
 adapters/oidc/wildfly-elytron/pom.xml                         | 2 +-
 adapters/oidc/wildfly/pom.xml                                 | 2 +-
 adapters/oidc/wildfly/wildfly-adapter/pom.xml                 | 2 +-
 adapters/oidc/wildfly/wildfly-subsystem/pom.xml               | 2 +-
 adapters/pom.xml                                              | 2 +-
 adapters/saml/as7-eap6/adapter/pom.xml                        | 2 +-
 adapters/saml/as7-eap6/pom.xml                                | 2 +-
 adapters/saml/as7-eap6/subsystem/pom.xml                      | 2 +-
 adapters/saml/core-public/pom.xml                             | 2 +-
 adapters/saml/core/pom.xml                                    | 2 +-
 adapters/saml/jetty/jetty-core/pom.xml                        | 2 +-
 adapters/saml/jetty/jetty9.2/pom.xml                          | 2 +-
 adapters/saml/jetty/jetty9.3/pom.xml                          | 2 +-
 adapters/saml/jetty/jetty9.4/pom.xml                          | 2 +-
 adapters/saml/jetty/pom.xml                                   | 2 +-
 adapters/saml/pom.xml                                         | 2 +-
 adapters/saml/servlet-filter/pom.xml                          | 2 +-
 adapters/saml/tomcat/pom.xml                                  | 2 +-
 adapters/saml/tomcat/tomcat-core/pom.xml                      | 2 +-
 adapters/saml/tomcat/tomcat/pom.xml                           | 2 +-
 adapters/saml/tomcat/tomcat7/pom.xml                          | 2 +-
 adapters/saml/undertow/pom.xml                                | 2 +-
 adapters/saml/wildfly-elytron/pom.xml                         | 2 +-
 adapters/saml/wildfly/pom.xml                                 | 2 +-
 adapters/saml/wildfly/wildfly-adapter/pom.xml                 | 2 +-
 adapters/saml/wildfly/wildfly-subsystem/pom.xml               | 2 +-
 adapters/spi/adapter-spi/pom.xml                              | 2 +-
 adapters/spi/jboss-adapter-core/pom.xml                       | 2 +-
 adapters/spi/jetty-adapter-spi/pom.xml                        | 2 +-
 adapters/spi/pom.xml                                          | 2 +-
 adapters/spi/servlet-adapter-spi/pom.xml                      | 2 +-
 adapters/spi/tomcat-adapter-spi/pom.xml                       | 2 +-
 adapters/spi/undertow-adapter-spi/pom.xml                     | 2 +-
 authz/client/pom.xml                                          | 2 +-
 authz/policy/common/pom.xml                                   | 2 +-
 authz/policy/pom.xml                                          | 2 +-
 authz/pom.xml                                                 | 2 +-
 boms/adapter/pom.xml                                          | 2 +-
 boms/misc/pom.xml                                             | 2 +-
 boms/pom.xml                                                  | 2 +-
 boms/spi/pom.xml                                              | 2 +-
 common/pom.xml                                                | 2 +-
 core/pom.xml                                                  | 2 +-
 dependencies/pom.xml                                          | 2 +-
 dependencies/server-all/pom.xml                               | 2 +-
 dependencies/server-min/pom.xml                               | 2 +-
 .../adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml         | 2 +-
 distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml    | 2 +-
 .../adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml        | 2 +-
 distribution/adapters/as7-eap6-adapter/pom.xml                | 2 +-
 distribution/adapters/fuse-adapter-zip/pom.xml                | 2 +-
 distribution/adapters/jetty92-adapter-zip/pom.xml             | 2 +-
 distribution/adapters/jetty93-adapter-zip/pom.xml             | 2 +-
 distribution/adapters/jetty94-adapter-zip/pom.xml             | 2 +-
 distribution/adapters/js-adapter-npm-zip/pom.xml              | 2 +-
 distribution/adapters/js-adapter-zip/pom.xml                  | 2 +-
 distribution/adapters/osgi/features/pom.xml                   | 2 +-
 distribution/adapters/osgi/jaas/pom.xml                       | 2 +-
 distribution/adapters/osgi/pom.xml                            | 2 +-
 distribution/adapters/pom.xml                                 | 2 +-
 distribution/adapters/tomcat-adapter-zip/pom.xml              | 2 +-
 distribution/adapters/tomcat7-adapter-zip/pom.xml             | 2 +-
 distribution/adapters/wildfly-adapter/pom.xml                 | 2 +-
 distribution/api-docs-dist/pom.xml                            | 2 +-
 distribution/downloads/pom.xml                                | 2 +-
 distribution/examples-dist/pom.xml                            | 2 +-
 distribution/feature-packs/adapter-feature-pack/pom.xml       | 2 +-
 distribution/feature-packs/pom.xml                            | 2 +-
 distribution/feature-packs/server-feature-pack/pom.xml        | 2 +-
 distribution/licenses-common/pom.xml                          | 2 +-
 distribution/maven-plugins/licenses-processor/pom.xml         | 2 +-
 distribution/maven-plugins/pom.xml                            | 2 +-
 distribution/pom.xml                                          | 2 +-
 .../saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml    | 2 +-
 .../saml-adapters/as7-eap6-adapter/as7-modules/pom.xml        | 2 +-
 .../saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml   | 2 +-
 distribution/saml-adapters/as7-eap6-adapter/pom.xml           | 2 +-
 distribution/saml-adapters/jetty92-adapter-zip/pom.xml        | 2 +-
 distribution/saml-adapters/jetty93-adapter-zip/pom.xml        | 2 +-
 distribution/saml-adapters/jetty94-adapter-zip/pom.xml        | 2 +-
 distribution/saml-adapters/pom.xml                            | 2 +-
 distribution/saml-adapters/tomcat-adapter-zip/pom.xml         | 2 +-
 distribution/saml-adapters/tomcat7-adapter-zip/pom.xml        | 2 +-
 distribution/saml-adapters/wildfly-adapter/pom.xml            | 2 +-
 .../saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml | 2 +-
 .../saml-adapters/wildfly-adapter/wildfly-modules/pom.xml     | 2 +-
 distribution/server-dist/pom.xml                              | 2 +-
 distribution/server-overlay/pom.xml                           | 2 +-
 distribution/server-x/pom.xml                                 | 2 +-
 examples/admin-client/pom.xml                                 | 2 +-
 examples/basic-auth/pom.xml                                   | 2 +-
 examples/broker/facebook-authentication/pom.xml               | 2 +-
 examples/broker/google-authentication/pom.xml                 | 2 +-
 examples/broker/pom.xml                                       | 2 +-
 examples/broker/saml-broker-authentication/pom.xml            | 2 +-
 examples/broker/twitter-authentication/pom.xml                | 2 +-
 examples/cors/angular-product-app/pom.xml                     | 2 +-
 examples/cors/database-service/pom.xml                        | 2 +-
 examples/cors/pom.xml                                         | 2 +-
 examples/demo-template/admin-access-app/pom.xml               | 2 +-
 examples/demo-template/angular-product-app/pom.xml            | 2 +-
 examples/demo-template/customer-app-cli/pom.xml               | 2 +-
 examples/demo-template/customer-app-filter/pom.xml            | 2 +-
 examples/demo-template/customer-app-js/pom.xml                | 2 +-
 examples/demo-template/customer-app/pom.xml                   | 2 +-
 examples/demo-template/database-service/pom.xml               | 2 +-
 examples/demo-template/example-ear/pom.xml                    | 2 +-
 examples/demo-template/offline-access-app/pom.xml             | 2 +-
 examples/demo-template/pom.xml                                | 2 +-
 examples/demo-template/product-app/pom.xml                    | 2 +-
 examples/demo-template/service-account/pom.xml                | 2 +-
 examples/js-console/pom.xml                                   | 2 +-
 examples/kerberos/pom.xml                                     | 2 +-
 examples/ldap/pom.xml                                         | 2 +-
 examples/multi-tenant/pom.xml                                 | 2 +-
 examples/pom.xml                                              | 2 +-
 examples/providers/authenticator/pom.xml                      | 2 +-
 examples/providers/domain-extension/pom.xml                   | 2 +-
 examples/providers/pom.xml                                    | 2 +-
 examples/providers/rest/pom.xml                               | 2 +-
 examples/saml/pom.xml                                         | 2 +-
 examples/saml/post-with-encryption/pom.xml                    | 2 +-
 examples/saml/post-with-signature/pom.xml                     | 2 +-
 examples/saml/redirect-with-signature/pom.xml                 | 2 +-
 examples/saml/servlet-filter/pom.xml                          | 2 +-
 examples/themes/pom.xml                                       | 2 +-
 federation/kerberos/pom.xml                                   | 2 +-
 federation/ldap/pom.xml                                       | 2 +-
 federation/pom.xml                                            | 2 +-
 federation/sssd/pom.xml                                       | 2 +-
 integration/admin-client/pom.xml                              | 2 +-
 integration/client-cli/admin-cli/pom.xml                      | 2 +-
 integration/client-cli/client-cli-dist/pom.xml                | 2 +-
 integration/client-cli/client-registration-cli/pom.xml        | 2 +-
 integration/client-cli/pom.xml                                | 2 +-
 integration/client-registration/pom.xml                       | 2 +-
 integration/pom.xml                                           | 2 +-
 misc/keycloak-test-helper/pom.xml                             | 2 +-
 misc/pom.xml                                                  | 2 +-
 misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml | 2 +-
 misc/spring-boot-starter/pom.xml                              | 2 +-
 .../keycloak-legacy-spring-boot-starter/pom.xml               | 2 +-
 misc/spring-legacy-boot-starter/pom.xml                       | 2 +-
 model/infinispan/pom.xml                                      | 2 +-
 model/jpa/pom.xml                                             | 2 +-
 model/map/pom.xml                                             | 2 +-
 model/pom.xml                                                 | 2 +-
 pom.xml                                                       | 2 +-
 quarkus/deployment/pom.xml                                    | 2 +-
 quarkus/pom.xml                                               | 2 +-
 quarkus/runtime/pom.xml                                       | 2 +-
 quarkus/server/pom.xml                                        | 2 +-
 release-details                                               | 4 ++--
 saml-core-api/pom.xml                                         | 2 +-
 saml-core/pom.xml                                             | 2 +-
 server-spi-private/pom.xml                                    | 2 +-
 server-spi/pom.xml                                            | 2 +-
 services/pom.xml                                              | 2 +-
 testsuite/db-allocator-plugin/pom.xml                         | 2 +-
 testsuite/integration-arquillian/pom.xml                      | 2 +-
 .../servers/app-server/app-server-spi/pom.xml                 | 2 +-
 .../servers/app-server/jboss/eap/pom.xml                      | 2 +-
 .../servers/app-server/jboss/eap6/pom.xml                     | 2 +-
 .../integration-arquillian/servers/app-server/jboss/pom.xml   | 2 +-
 .../servers/app-server/jboss/relative/eap/pom.xml             | 2 +-
 .../servers/app-server/jboss/relative/pom.xml                 | 2 +-
 .../servers/app-server/jboss/relative/wildfly/pom.xml         | 2 +-
 .../servers/app-server/jboss/wildfly-deprecated/pom.xml       | 2 +-
 .../servers/app-server/jboss/wildfly/pom.xml                  | 2 +-
 .../servers/app-server/jetty/92/pom.xml                       | 2 +-
 .../servers/app-server/jetty/93/pom.xml                       | 2 +-
 .../servers/app-server/jetty/94/pom.xml                       | 2 +-
 .../servers/app-server/jetty/common/pom.xml                   | 2 +-
 .../integration-arquillian/servers/app-server/jetty/pom.xml   | 2 +-
 .../servers/app-server/karaf/fuse63/pom.xml                   | 2 +-
 .../servers/app-server/karaf/fuse7x/pom.xml                   | 2 +-
 .../integration-arquillian/servers/app-server/karaf/pom.xml   | 2 +-
 testsuite/integration-arquillian/servers/app-server/pom.xml   | 2 +-
 .../servers/app-server/tomcat/common/pom.xml                  | 2 +-
 .../integration-arquillian/servers/app-server/tomcat/pom.xml  | 2 +-
 .../servers/app-server/tomcat/tomcat7/pom.xml                 | 2 +-
 .../servers/app-server/tomcat/tomcat8/pom.xml                 | 2 +-
 .../servers/app-server/tomcat/tomcat9/pom.xml                 | 2 +-
 .../servers/app-server/undertow/pom.xml                       | 2 +-
 .../servers/auth-server/jboss/eap/pom.xml                     | 2 +-
 .../servers/auth-server/jboss/legacy/pom.xml                  | 2 +-
 .../integration-arquillian/servers/auth-server/jboss/pom.xml  | 2 +-
 .../servers/auth-server/jboss/wildfly/pom.xml                 | 2 +-
 testsuite/integration-arquillian/servers/auth-server/pom.xml  | 2 +-
 .../servers/auth-server/quarkus/pom.xml                       | 2 +-
 .../servers/auth-server/services/pom.xml                      | 2 +-
 .../servers/auth-server/services/testsuite-providers/pom.xml  | 2 +-
 .../servers/auth-server/undertow/pom.xml                      | 2 +-
 .../servers/cache-server/jboss/infinispan/pom.xml             | 2 +-
 .../servers/cache-server/jboss/jdg/pom.xml                    | 2 +-
 .../integration-arquillian/servers/cache-server/jboss/pom.xml | 2 +-
 testsuite/integration-arquillian/servers/cache-server/pom.xml | 2 +-
 testsuite/integration-arquillian/servers/migration/pom.xml    | 2 +-
 testsuite/integration-arquillian/servers/pom.xml              | 2 +-
 .../integration-arquillian/test-apps/app-profile-jee/pom.xml  | 2 +-
 .../test-apps/cors/angular-product/pom.xml                    | 2 +-
 .../test-apps/cors/database-service/pom.xml                   | 2 +-
 testsuite/integration-arquillian/test-apps/cors/pom.xml       | 2 +-
 .../test-apps/fuse/camel-fuse7-undertow/pom.xml               | 2 +-
 testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml | 2 +-
 .../test-apps/fuse/customer-app-fuse/pom.xml                  | 2 +-
 .../test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml           | 2 +-
 .../integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml   | 2 +-
 .../test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml           | 2 +-
 .../integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml   | 2 +-
 .../test-apps/fuse/external-config/pom.xml                    | 2 +-
 .../integration-arquillian/test-apps/fuse/features/pom.xml    | 2 +-
 testsuite/integration-arquillian/test-apps/fuse/pom.xml       | 2 +-
 .../test-apps/fuse/product-app-fuse/pom.xml                   | 2 +-
 .../test-apps/fuse/product-app-fuse7-undertow/pom.xml         | 2 +-
 .../test-apps/hello-world-authz-service/pom.xml               | 2 +-
 .../test-apps/photoz/photoz-html5-client/pom.xml              | 2 +-
 .../test-apps/photoz/photoz-restful-api/pom.xml               | 2 +-
 testsuite/integration-arquillian/test-apps/photoz/pom.xml     | 2 +-
 testsuite/integration-arquillian/test-apps/pom.xml            | 2 +-
 .../integration-arquillian/test-apps/servlet-authz/pom.xml    | 2 +-
 .../test-apps/servlet-policy-enforcer/pom.xml                 | 2 +-
 testsuite/integration-arquillian/test-apps/servlets/pom.xml   | 2 +-
 .../test-apps/spring-boot-adapter-app/pom.xml                 | 2 +-
 .../integration-arquillian/test-apps/test-apps-dist/pom.xml   | 2 +-
 testsuite/integration-arquillian/tests/base/pom.xml           | 2 +-
 .../integration-arquillian/tests/other/adapters/jboss/pom.xml | 2 +-
 .../tests/other/adapters/jboss/relative/eap/pom.xml           | 2 +-
 .../tests/other/adapters/jboss/relative/pom.xml               | 2 +-
 .../tests/other/adapters/jboss/relative/wildfly/pom.xml       | 2 +-
 .../tests/other/adapters/jboss/remote/pom.xml                 | 2 +-
 .../tests/other/adapters/karaf/fuse61/pom.xml                 | 2 +-
 .../tests/other/adapters/karaf/fuse62/pom.xml                 | 2 +-
 .../tests/other/adapters/karaf/karaf3/pom.xml                 | 2 +-
 .../integration-arquillian/tests/other/adapters/karaf/pom.xml | 2 +-
 testsuite/integration-arquillian/tests/other/adapters/pom.xml | 2 +-
 .../integration-arquillian/tests/other/adapters/was/pom.xml   | 2 +-
 .../tests/other/adapters/was/was8/pom.xml                     | 2 +-
 .../integration-arquillian/tests/other/adapters/wls/pom.xml   | 2 +-
 .../tests/other/adapters/wls/wls12/pom.xml                    | 2 +-
 testsuite/integration-arquillian/tests/other/base-ui/pom.xml  | 2 +-
 .../integration-arquillian/tests/other/clean-start/pom.xml    | 2 +-
 testsuite/integration-arquillian/tests/other/console/pom.xml  | 2 +-
 .../tests/other/jpa-performance/pom.xml                       | 2 +-
 .../tests/other/mod_auth_mellon/pom.xml                       | 2 +-
 testsuite/integration-arquillian/tests/other/pom.xml          | 2 +-
 .../tests/other/server-config-migration/pom.xml               | 2 +-
 .../tests/other/springboot-tests/pom.xml                      | 2 +-
 testsuite/integration-arquillian/tests/other/sssd/pom.xml     | 2 +-
 testsuite/integration-arquillian/tests/pom.xml                | 2 +-
 testsuite/integration-arquillian/util/pom.xml                 | 2 +-
 testsuite/performance/infinispan/pom.xml                      | 2 +-
 testsuite/performance/keycloak/pom.xml                        | 2 +-
 .../performance/load-balancer/wildfly-modcluster/pom.xml      | 2 +-
 testsuite/performance/pom.xml                                 | 2 +-
 testsuite/performance/tests/pom.xml                           | 2 +-
 testsuite/pom.xml                                             | 2 +-
 testsuite/utils/pom.xml                                       | 2 +-
 themes/pom.xml                                                | 2 +-
 util/embedded-ldap/pom.xml                                    | 2 +-
 util/pom.xml                                                  | 2 +-
 wildfly/adduser/pom.xml                                       | 2 +-
 wildfly/extensions/pom.xml                                    | 2 +-
 wildfly/pom.xml                                               | 2 +-
 wildfly/server-subsystem/pom.xml                              | 2 +-
 298 files changed, 299 insertions(+), 299 deletions(-)

diff --git a/adapters/oidc/adapter-core/pom.xml b/adapters/oidc/adapter-core/pom.xml
index da381ab917e1..7b7b98ac61e8 100755
--- a/adapters/oidc/adapter-core/pom.xml
+++ b/adapters/oidc/adapter-core/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml b/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml
index f08548eb6cfa..7c862f887c39 100755
--- a/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml
+++ b/adapters/oidc/as7-eap6/as7-adapter-spi/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-as7-integration-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/as7-eap6/as7-adapter/pom.xml b/adapters/oidc/as7-eap6/as7-adapter/pom.xml
index 1364d70b21c8..4ce28810eef7 100755
--- a/adapters/oidc/as7-eap6/as7-adapter/pom.xml
+++ b/adapters/oidc/as7-eap6/as7-adapter/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-as7-integration-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/as7-eap6/as7-subsystem/pom.xml b/adapters/oidc/as7-eap6/as7-subsystem/pom.xml
index 460ef3bb60a1..59b86f66c3ba 100755
--- a/adapters/oidc/as7-eap6/as7-subsystem/pom.xml
+++ b/adapters/oidc/as7-eap6/as7-subsystem/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak
         keycloak-as7-integration-pom
-        11.0.2
+        11.0.3
         ../pom.xml
     
 
diff --git a/adapters/oidc/as7-eap6/pom.xml b/adapters/oidc/as7-eap6/pom.xml
index 6a2b0b856f87..bbde3902f008 100755
--- a/adapters/oidc/as7-eap6/pom.xml
+++ b/adapters/oidc/as7-eap6/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     Keycloak AS7 / JBoss EAP 6 Integration
diff --git a/adapters/oidc/fuse7/camel-undertow/pom.xml b/adapters/oidc/fuse7/camel-undertow/pom.xml
index 718dd6bbb8b8..57bb68f71600 100644
--- a/adapters/oidc/fuse7/camel-undertow/pom.xml
+++ b/adapters/oidc/fuse7/camel-undertow/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-fuse7-integration-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/fuse7/jetty94/pom.xml b/adapters/oidc/fuse7/jetty94/pom.xml
index e1f132addd07..f6e0309af97f 100644
--- a/adapters/oidc/fuse7/jetty94/pom.xml
+++ b/adapters/oidc/fuse7/jetty94/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-fuse7-integration-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/fuse7/pom.xml b/adapters/oidc/fuse7/pom.xml
index aee39019d8b2..6184b6d539d6 100644
--- a/adapters/oidc/fuse7/pom.xml
+++ b/adapters/oidc/fuse7/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/fuse7/tomcat8/pom.xml b/adapters/oidc/fuse7/tomcat8/pom.xml
index d92312cd2a32..2cc3e18a2a53 100644
--- a/adapters/oidc/fuse7/tomcat8/pom.xml
+++ b/adapters/oidc/fuse7/tomcat8/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-fuse7-integration-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/fuse7/undertow/pom.xml b/adapters/oidc/fuse7/undertow/pom.xml
index a697273c2c9c..252559262521 100644
--- a/adapters/oidc/fuse7/undertow/pom.xml
+++ b/adapters/oidc/fuse7/undertow/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-fuse7-integration-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/installed/pom.xml b/adapters/oidc/installed/pom.xml
index cf891d9c4763..a4191cac925c 100755
--- a/adapters/oidc/installed/pom.xml
+++ b/adapters/oidc/installed/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/jaxrs-oauth-client/pom.xml b/adapters/oidc/jaxrs-oauth-client/pom.xml
index b33626dc0eca..1b4be4369b3c 100755
--- a/adapters/oidc/jaxrs-oauth-client/pom.xml
+++ b/adapters/oidc/jaxrs-oauth-client/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/jetty/jetty-core/pom.xml b/adapters/oidc/jetty/jetty-core/pom.xml
index a8652779f997..11d57c3d22a1 100755
--- a/adapters/oidc/jetty/jetty-core/pom.xml
+++ b/adapters/oidc/jetty/jetty-core/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/jetty/jetty9.2/pom.xml b/adapters/oidc/jetty/jetty9.2/pom.xml
index 604bf95bc333..88c9af3f082d 100755
--- a/adapters/oidc/jetty/jetty9.2/pom.xml
+++ b/adapters/oidc/jetty/jetty9.2/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/jetty/jetty9.3/pom.xml b/adapters/oidc/jetty/jetty9.3/pom.xml
index 4891aa401170..993408301732 100644
--- a/adapters/oidc/jetty/jetty9.3/pom.xml
+++ b/adapters/oidc/jetty/jetty9.3/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/jetty/jetty9.4/pom.xml b/adapters/oidc/jetty/jetty9.4/pom.xml
index 4527656b1124..8b0f5b1594eb 100644
--- a/adapters/oidc/jetty/jetty9.4/pom.xml
+++ b/adapters/oidc/jetty/jetty9.4/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/jetty/pom.xml b/adapters/oidc/jetty/pom.xml
index c723445df89a..33a963f8c6c8 100755
--- a/adapters/oidc/jetty/pom.xml
+++ b/adapters/oidc/jetty/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     Keycloak Jetty Integration
diff --git a/adapters/oidc/js/pom.xml b/adapters/oidc/js/pom.xml
index 1a0210e8f981..8c91d1edc076 100755
--- a/adapters/oidc/js/pom.xml
+++ b/adapters/oidc/js/pom.xml
@@ -21,7 +21,7 @@
 	
 		keycloak-parent
 		org.keycloak
-		11.0.2
+		11.0.3
         ../../../pom.xml
 	
 	4.0.0
diff --git a/adapters/oidc/kcinit/pom.xml b/adapters/oidc/kcinit/pom.xml
index 039bdece89e9..f538eeff9dd2 100755
--- a/adapters/oidc/kcinit/pom.xml
+++ b/adapters/oidc/kcinit/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/osgi-adapter/pom.xml b/adapters/oidc/osgi-adapter/pom.xml
index d111ab35bed3..5990e1ab38cc 100755
--- a/adapters/oidc/osgi-adapter/pom.xml
+++ b/adapters/oidc/osgi-adapter/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/pom.xml b/adapters/oidc/pom.xml
index 501ff8103ad1..7c2597913ae2 100755
--- a/adapters/oidc/pom.xml
+++ b/adapters/oidc/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../pom.xml
     
     Keycloak OIDC Client Adapter Modules
diff --git a/adapters/oidc/servlet-filter/pom.xml b/adapters/oidc/servlet-filter/pom.xml
index 3eab33da3cb1..3f168dcb7edc 100755
--- a/adapters/oidc/servlet-filter/pom.xml
+++ b/adapters/oidc/servlet-filter/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/spring-boot-adapter-core/pom.xml b/adapters/oidc/spring-boot-adapter-core/pom.xml
index 614a40e77f8c..fefa0e6e2927 100755
--- a/adapters/oidc/spring-boot-adapter-core/pom.xml
+++ b/adapters/oidc/spring-boot-adapter-core/pom.xml
@@ -21,7 +21,7 @@
   
     keycloak-parent
     org.keycloak
-    11.0.2
+    11.0.3
     ../../../pom.xml
   
   4.0.0
diff --git a/adapters/oidc/spring-boot-container-bundle/pom.xml b/adapters/oidc/spring-boot-container-bundle/pom.xml
index 48a83c384c29..9c16c2f2096f 100644
--- a/adapters/oidc/spring-boot-container-bundle/pom.xml
+++ b/adapters/oidc/spring-boot-container-bundle/pom.xml
@@ -4,7 +4,7 @@
     
       keycloak-parent
       org.keycloak
-      11.0.2
+      11.0.3
       ../../../pom.xml
     
     spring-boot-container-bundle
diff --git a/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml b/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml
index 81d0378955b1..5d3761713317 100644
--- a/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml
+++ b/adapters/oidc/spring-boot-legacy-container-bundle/pom.xml
@@ -4,7 +4,7 @@
     
       keycloak-parent
       org.keycloak
-      11.0.2
+      11.0.3
       ../../../pom.xml
     
     spring-boot-legacy-container-bundle
diff --git a/adapters/oidc/spring-boot/pom.xml b/adapters/oidc/spring-boot/pom.xml
index ae19e2dadf43..1a5941844451 100755
--- a/adapters/oidc/spring-boot/pom.xml
+++ b/adapters/oidc/spring-boot/pom.xml
@@ -21,7 +21,7 @@
   
     keycloak-parent
     org.keycloak
-    11.0.2
+    11.0.3
     ../../../pom.xml
   
   4.0.0
diff --git a/adapters/oidc/spring-boot2/pom.xml b/adapters/oidc/spring-boot2/pom.xml
index 7f5115da116b..30b51729ecef 100755
--- a/adapters/oidc/spring-boot2/pom.xml
+++ b/adapters/oidc/spring-boot2/pom.xml
@@ -21,7 +21,7 @@
   
     keycloak-parent
     org.keycloak
-    11.0.2
+    11.0.3
     ../../../pom.xml
   
   4.0.0
diff --git a/adapters/oidc/spring-security/pom.xml b/adapters/oidc/spring-security/pom.xml
index f019c1d8e4e6..662eec9212fe 100755
--- a/adapters/oidc/spring-security/pom.xml
+++ b/adapters/oidc/spring-security/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/tomcat/pom.xml b/adapters/oidc/tomcat/pom.xml
index 0b89d5a67d07..135cf37e37a3 100755
--- a/adapters/oidc/tomcat/pom.xml
+++ b/adapters/oidc/tomcat/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     Keycloak Tomcat Integration
diff --git a/adapters/oidc/tomcat/tomcat-core/pom.xml b/adapters/oidc/tomcat/tomcat-core/pom.xml
index d37f002d5171..88c03baae07a 100755
--- a/adapters/oidc/tomcat/tomcat-core/pom.xml
+++ b/adapters/oidc/tomcat/tomcat-core/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-tomcat-integration-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/tomcat/tomcat/pom.xml b/adapters/oidc/tomcat/tomcat/pom.xml
index cb5dcbd7cd98..4dcc03bbcf96 100755
--- a/adapters/oidc/tomcat/tomcat/pom.xml
+++ b/adapters/oidc/tomcat/tomcat/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-tomcat-integration-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/tomcat/tomcat7/pom.xml b/adapters/oidc/tomcat/tomcat7/pom.xml
index c6471958bd76..cce5633568fd 100755
--- a/adapters/oidc/tomcat/tomcat7/pom.xml
+++ b/adapters/oidc/tomcat/tomcat7/pom.xml
@@ -21,7 +21,7 @@
     
 		keycloak-tomcat-integration-pom
 		org.keycloak
-		11.0.2
+		11.0.3
 		../pom.xml
 	
 	4.0.0
diff --git a/adapters/oidc/undertow/pom.xml b/adapters/oidc/undertow/pom.xml
index 717c53022af9..6d417428ced7 100755
--- a/adapters/oidc/undertow/pom.xml
+++ b/adapters/oidc/undertow/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/wildfly-elytron/pom.xml b/adapters/oidc/wildfly-elytron/pom.xml
index 60b3ca9a233a..6b6bc000abad 100755
--- a/adapters/oidc/wildfly-elytron/pom.xml
+++ b/adapters/oidc/wildfly-elytron/pom.xml
@@ -22,7 +22,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/wildfly/pom.xml b/adapters/oidc/wildfly/pom.xml
index b205fc746d0d..fd7a164f9566 100755
--- a/adapters/oidc/wildfly/pom.xml
+++ b/adapters/oidc/wildfly/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     Keycloak WildFly Integration
diff --git a/adapters/oidc/wildfly/wildfly-adapter/pom.xml b/adapters/oidc/wildfly/wildfly-adapter/pom.xml
index 45c57c339857..a60b4ace9523 100644
--- a/adapters/oidc/wildfly/wildfly-adapter/pom.xml
+++ b/adapters/oidc/wildfly/wildfly-adapter/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
     4.0.0
diff --git a/adapters/oidc/wildfly/wildfly-subsystem/pom.xml b/adapters/oidc/wildfly/wildfly-subsystem/pom.xml
index dc61465631a6..59a0a1f16cc8 100755
--- a/adapters/oidc/wildfly/wildfly-subsystem/pom.xml
+++ b/adapters/oidc/wildfly/wildfly-subsystem/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak
         keycloak-parent
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
 
diff --git a/adapters/pom.xml b/adapters/pom.xml
index 5a2c8f735d31..30a45394bcb0 100755
--- a/adapters/pom.xml
+++ b/adapters/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     Keycloak Adapters
diff --git a/adapters/saml/as7-eap6/adapter/pom.xml b/adapters/saml/as7-eap6/adapter/pom.xml
index d62c909e141d..708c2054b516 100755
--- a/adapters/saml/as7-eap6/adapter/pom.xml
+++ b/adapters/saml/as7-eap6/adapter/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-saml-eap-integration-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/adapters/saml/as7-eap6/pom.xml b/adapters/saml/as7-eap6/pom.xml
index 0d8d9475b43e..9383cfc1e0ed 100755
--- a/adapters/saml/as7-eap6/pom.xml
+++ b/adapters/saml/as7-eap6/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     Keycloak SAML EAP Integration
diff --git a/adapters/saml/as7-eap6/subsystem/pom.xml b/adapters/saml/as7-eap6/subsystem/pom.xml
index 16e3450fbfe7..4acaf798fe99 100755
--- a/adapters/saml/as7-eap6/subsystem/pom.xml
+++ b/adapters/saml/as7-eap6/subsystem/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak
         keycloak-saml-eap-integration-pom
-        11.0.2
+        11.0.3
         ../pom.xml
     
 
diff --git a/adapters/saml/core-public/pom.xml b/adapters/saml/core-public/pom.xml
index 9a47c2da2c71..3263325a9c3f 100755
--- a/adapters/saml/core-public/pom.xml
+++ b/adapters/saml/core-public/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/saml/core/pom.xml b/adapters/saml/core/pom.xml
index 70fabacb4bc2..d4f12ad42fa8 100755
--- a/adapters/saml/core/pom.xml
+++ b/adapters/saml/core/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/saml/jetty/jetty-core/pom.xml b/adapters/saml/jetty/jetty-core/pom.xml
index 57a03fe06d91..70f5f3882033 100755
--- a/adapters/saml/jetty/jetty-core/pom.xml
+++ b/adapters/saml/jetty/jetty-core/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
     4.0.0
diff --git a/adapters/saml/jetty/jetty9.2/pom.xml b/adapters/saml/jetty/jetty9.2/pom.xml
index b21cf57d9c90..22a3adbfc62e 100755
--- a/adapters/saml/jetty/jetty9.2/pom.xml
+++ b/adapters/saml/jetty/jetty9.2/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
     4.0.0
diff --git a/adapters/saml/jetty/jetty9.3/pom.xml b/adapters/saml/jetty/jetty9.3/pom.xml
index 908bbe9c7b1f..5c3258effd56 100644
--- a/adapters/saml/jetty/jetty9.3/pom.xml
+++ b/adapters/saml/jetty/jetty9.3/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
     4.0.0
diff --git a/adapters/saml/jetty/jetty9.4/pom.xml b/adapters/saml/jetty/jetty9.4/pom.xml
index fc68ce91feeb..2379d00b5b7b 100644
--- a/adapters/saml/jetty/jetty9.4/pom.xml
+++ b/adapters/saml/jetty/jetty9.4/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
     4.0.0
diff --git a/adapters/saml/jetty/pom.xml b/adapters/saml/jetty/pom.xml
index 342e10d7f35d..ba26f19fb109 100755
--- a/adapters/saml/jetty/pom.xml
+++ b/adapters/saml/jetty/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     Keycloak SAML Jetty Integration
diff --git a/adapters/saml/pom.xml b/adapters/saml/pom.xml
index 9777c652df1f..be5b84833c03 100755
--- a/adapters/saml/pom.xml
+++ b/adapters/saml/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../pom.xml
     
     Keycloak SAML Client Adapter Modules
diff --git a/adapters/saml/servlet-filter/pom.xml b/adapters/saml/servlet-filter/pom.xml
index affcb9680b94..d11ba7805184 100755
--- a/adapters/saml/servlet-filter/pom.xml
+++ b/adapters/saml/servlet-filter/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/saml/tomcat/pom.xml b/adapters/saml/tomcat/pom.xml
index 2ea2192d0843..9bef0f59b941 100755
--- a/adapters/saml/tomcat/pom.xml
+++ b/adapters/saml/tomcat/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     Keycloak SAML Tomcat Integration
diff --git a/adapters/saml/tomcat/tomcat-core/pom.xml b/adapters/saml/tomcat/tomcat-core/pom.xml
index 4920e8d003a9..9404141a9ab5 100755
--- a/adapters/saml/tomcat/tomcat-core/pom.xml
+++ b/adapters/saml/tomcat/tomcat-core/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-saml-tomcat-integration-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/adapters/saml/tomcat/tomcat/pom.xml b/adapters/saml/tomcat/tomcat/pom.xml
index d22c84e2c460..93abfc28f339 100755
--- a/adapters/saml/tomcat/tomcat/pom.xml
+++ b/adapters/saml/tomcat/tomcat/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-saml-tomcat-integration-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/adapters/saml/tomcat/tomcat7/pom.xml b/adapters/saml/tomcat/tomcat7/pom.xml
index 3fd72e49d872..c44263838114 100755
--- a/adapters/saml/tomcat/tomcat7/pom.xml
+++ b/adapters/saml/tomcat/tomcat7/pom.xml
@@ -21,7 +21,7 @@
     
 		keycloak-saml-tomcat-integration-pom
 		org.keycloak
-		11.0.2
+		11.0.3
 		../pom.xml
 	
 	4.0.0
diff --git a/adapters/saml/undertow/pom.xml b/adapters/saml/undertow/pom.xml
index 86e057f138ff..74f6a49c2845 100755
--- a/adapters/saml/undertow/pom.xml
+++ b/adapters/saml/undertow/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/saml/wildfly-elytron/pom.xml b/adapters/saml/wildfly-elytron/pom.xml
index 8c04b1824172..0804d69f50b2 100755
--- a/adapters/saml/wildfly-elytron/pom.xml
+++ b/adapters/saml/wildfly-elytron/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/saml/wildfly/pom.xml b/adapters/saml/wildfly/pom.xml
index 7f0db9d4cb68..af6f5d1d8c24 100755
--- a/adapters/saml/wildfly/pom.xml
+++ b/adapters/saml/wildfly/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     Keycloak SAML Wildfly Integration
diff --git a/adapters/saml/wildfly/wildfly-adapter/pom.xml b/adapters/saml/wildfly/wildfly-adapter/pom.xml
index b10bff7bc8cd..8c4398fa706a 100755
--- a/adapters/saml/wildfly/wildfly-adapter/pom.xml
+++ b/adapters/saml/wildfly/wildfly-adapter/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
     4.0.0
diff --git a/adapters/saml/wildfly/wildfly-subsystem/pom.xml b/adapters/saml/wildfly/wildfly-subsystem/pom.xml
index 6dbd0b818a9c..0b9a4e5330f2 100755
--- a/adapters/saml/wildfly/wildfly-subsystem/pom.xml
+++ b/adapters/saml/wildfly/wildfly-subsystem/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak
         keycloak-parent
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
 
diff --git a/adapters/spi/adapter-spi/pom.xml b/adapters/spi/adapter-spi/pom.xml
index 9bea7e61f083..0f5fd6609b93 100755
--- a/adapters/spi/adapter-spi/pom.xml
+++ b/adapters/spi/adapter-spi/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/spi/jboss-adapter-core/pom.xml b/adapters/spi/jboss-adapter-core/pom.xml
index d629ae96285c..d20250514b1f 100755
--- a/adapters/spi/jboss-adapter-core/pom.xml
+++ b/adapters/spi/jboss-adapter-core/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/spi/jetty-adapter-spi/pom.xml b/adapters/spi/jetty-adapter-spi/pom.xml
index 43ee69e3930d..b1c8e410f099 100755
--- a/adapters/spi/jetty-adapter-spi/pom.xml
+++ b/adapters/spi/jetty-adapter-spi/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/spi/pom.xml b/adapters/spi/pom.xml
index 370b8729fa40..422d508d6eb3 100755
--- a/adapters/spi/pom.xml
+++ b/adapters/spi/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../pom.xml
     
     Keycloak Client Adapter SPI Modules
diff --git a/adapters/spi/servlet-adapter-spi/pom.xml b/adapters/spi/servlet-adapter-spi/pom.xml
index d1f42b80478b..108184be3d35 100755
--- a/adapters/spi/servlet-adapter-spi/pom.xml
+++ b/adapters/spi/servlet-adapter-spi/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/spi/tomcat-adapter-spi/pom.xml b/adapters/spi/tomcat-adapter-spi/pom.xml
index 192bb8e4ac56..fdced8d4ca7d 100755
--- a/adapters/spi/tomcat-adapter-spi/pom.xml
+++ b/adapters/spi/tomcat-adapter-spi/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/adapters/spi/undertow-adapter-spi/pom.xml b/adapters/spi/undertow-adapter-spi/pom.xml
index 2122b14f63c6..159d072b5711 100755
--- a/adapters/spi/undertow-adapter-spi/pom.xml
+++ b/adapters/spi/undertow-adapter-spi/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     4.0.0
diff --git a/authz/client/pom.xml b/authz/client/pom.xml
index 29b5a87e07a1..528776902144 100644
--- a/authz/client/pom.xml
+++ b/authz/client/pom.xml
@@ -7,7 +7,7 @@
     
         org.keycloak
         keycloak-authz-parent
-        11.0.2
+        11.0.3
         ../pom.xml
     
 
diff --git a/authz/policy/common/pom.xml b/authz/policy/common/pom.xml
index e044c8b4a37d..070f368274e7 100644
--- a/authz/policy/common/pom.xml
+++ b/authz/policy/common/pom.xml
@@ -25,7 +25,7 @@
     
         org.keycloak
         keycloak-authz-provider-parent
-        11.0.2
+        11.0.3
         ../pom.xml
     
 
diff --git a/authz/policy/pom.xml b/authz/policy/pom.xml
index 1600d8897281..4d92a95ded82 100644
--- a/authz/policy/pom.xml
+++ b/authz/policy/pom.xml
@@ -7,7 +7,7 @@
     
         org.keycloak
         keycloak-authz-parent
-        11.0.2
+        11.0.3
         ../pom.xml
     
 
diff --git a/authz/pom.xml b/authz/pom.xml
index 7951b4b12c5c..9201bba36a02 100644
--- a/authz/pom.xml
+++ b/authz/pom.xml
@@ -7,7 +7,7 @@
     
         org.keycloak
         keycloak-parent
-        11.0.2
+        11.0.3
         ../pom.xml
     
 
diff --git a/boms/adapter/pom.xml b/boms/adapter/pom.xml
index 58bef7e434a6..53ac15814d8a 100644
--- a/boms/adapter/pom.xml
+++ b/boms/adapter/pom.xml
@@ -22,7 +22,7 @@
     
         org.keycloak.bom
         keycloak-bom-parent
-        11.0.2
+        11.0.3
     
 
     org.keycloak.bom
diff --git a/boms/misc/pom.xml b/boms/misc/pom.xml
index e03287a3d32f..3086bc0f9fd2 100644
--- a/boms/misc/pom.xml
+++ b/boms/misc/pom.xml
@@ -22,7 +22,7 @@
     
         org.keycloak.bom
         keycloak-bom-parent
-        11.0.2
+        11.0.3
     
 
     org.keycloak.bom
diff --git a/boms/pom.xml b/boms/pom.xml
index 20af33ffe170..1ae109d27cc8 100644
--- a/boms/pom.xml
+++ b/boms/pom.xml
@@ -26,7 +26,7 @@
 
     org.keycloak.bom
     keycloak-bom-parent
-    11.0.2
+    11.0.3
 
     pom
 
diff --git a/boms/spi/pom.xml b/boms/spi/pom.xml
index 13b02ea5522e..3c0f2a7abbbe 100644
--- a/boms/spi/pom.xml
+++ b/boms/spi/pom.xml
@@ -23,7 +23,7 @@
     
         org.keycloak.bom
         keycloak-bom-parent
-        11.0.2
+        11.0.3
     
 
     org.keycloak.bom
diff --git a/common/pom.xml b/common/pom.xml
index 91ec0cc4cbfe..60c0405de5ed 100755
--- a/common/pom.xml
+++ b/common/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/core/pom.xml b/core/pom.xml
index 2cdaa2a1afea..31bfbc3f09e4 100755
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/dependencies/pom.xml b/dependencies/pom.xml
index 45e4be5788a9..33fb18d239e6 100755
--- a/dependencies/pom.xml
+++ b/dependencies/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/dependencies/server-all/pom.xml b/dependencies/server-all/pom.xml
index 5d1a93b5fca2..cbc061466a94 100755
--- a/dependencies/server-all/pom.xml
+++ b/dependencies/server-all/pom.xml
@@ -21,7 +21,7 @@
 	
 		keycloak-dependencies-parent
 		org.keycloak
-		11.0.2
+		11.0.3
 	
 	4.0.0
 
diff --git a/dependencies/server-min/pom.xml b/dependencies/server-min/pom.xml
index dc8306651a0b..7c53125eae05 100755
--- a/dependencies/server-min/pom.xml
+++ b/dependencies/server-min/pom.xml
@@ -21,7 +21,7 @@
 	
 		keycloak-dependencies-parent
 		org.keycloak
-		11.0.2
+		11.0.3
 	
 	4.0.0
 
diff --git a/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml b/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml
index c70e5e5f805a..da06d1cd70de 100755
--- a/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml
+++ b/distribution/adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
 
diff --git a/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml b/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml
index bbc7deca337c..216869f2e74d 100755
--- a/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml
+++ b/distribution/adapters/as7-eap6-adapter/as7-modules/pom.xml
@@ -25,7 +25,7 @@
     
         keycloak-as7-eap6-adapter-dist-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
 
diff --git a/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml b/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml
index 37f84f413d61..f8d58ade509f 100755
--- a/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml
+++ b/distribution/adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-as7-eap6-adapter-dist-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
 
diff --git a/distribution/adapters/as7-eap6-adapter/pom.xml b/distribution/adapters/as7-eap6-adapter/pom.xml
index 89b9d6f1be85..09803a494237 100644
--- a/distribution/adapters/as7-eap6-adapter/pom.xml
+++ b/distribution/adapters/as7-eap6-adapter/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     Keycloak AS7 / JBoss EAP 6 Adapter Distros
diff --git a/distribution/adapters/fuse-adapter-zip/pom.xml b/distribution/adapters/fuse-adapter-zip/pom.xml
index c2b32799a8ef..b4787cb47457 100644
--- a/distribution/adapters/fuse-adapter-zip/pom.xml
+++ b/distribution/adapters/fuse-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
 
diff --git a/distribution/adapters/jetty92-adapter-zip/pom.xml b/distribution/adapters/jetty92-adapter-zip/pom.xml
index babf4bdc3ade..8cb8dc3a991f 100755
--- a/distribution/adapters/jetty92-adapter-zip/pom.xml
+++ b/distribution/adapters/jetty92-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
 
diff --git a/distribution/adapters/jetty93-adapter-zip/pom.xml b/distribution/adapters/jetty93-adapter-zip/pom.xml
index 1b9a744a557b..832368850522 100644
--- a/distribution/adapters/jetty93-adapter-zip/pom.xml
+++ b/distribution/adapters/jetty93-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
 
diff --git a/distribution/adapters/jetty94-adapter-zip/pom.xml b/distribution/adapters/jetty94-adapter-zip/pom.xml
index ede2fbafbe7d..b63131b3269b 100644
--- a/distribution/adapters/jetty94-adapter-zip/pom.xml
+++ b/distribution/adapters/jetty94-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
 
diff --git a/distribution/adapters/js-adapter-npm-zip/pom.xml b/distribution/adapters/js-adapter-npm-zip/pom.xml
index 78296bccf26c..f074cb4f2b0d 100755
--- a/distribution/adapters/js-adapter-npm-zip/pom.xml
+++ b/distribution/adapters/js-adapter-npm-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
 
diff --git a/distribution/adapters/js-adapter-zip/pom.xml b/distribution/adapters/js-adapter-zip/pom.xml
index eac7861c80fe..ccdef6df0b43 100755
--- a/distribution/adapters/js-adapter-zip/pom.xml
+++ b/distribution/adapters/js-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
 
diff --git a/distribution/adapters/osgi/features/pom.xml b/distribution/adapters/osgi/features/pom.xml
index cdaaa38cce4f..add9dc8644b9 100755
--- a/distribution/adapters/osgi/features/pom.xml
+++ b/distribution/adapters/osgi/features/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
     Keycloak OSGI Features
diff --git a/distribution/adapters/osgi/jaas/pom.xml b/distribution/adapters/osgi/jaas/pom.xml
index 8169f15bd45d..8aca2832404a 100755
--- a/distribution/adapters/osgi/jaas/pom.xml
+++ b/distribution/adapters/osgi/jaas/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
     Keycloak OSGI JAAS Realm Configuration
diff --git a/distribution/adapters/osgi/pom.xml b/distribution/adapters/osgi/pom.xml
index b237ec9f9827..e411307592fd 100755
--- a/distribution/adapters/osgi/pom.xml
+++ b/distribution/adapters/osgi/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     Keycloak OSGI Integration
diff --git a/distribution/adapters/pom.xml b/distribution/adapters/pom.xml
index 70d9bafbbba9..0530c54ee4a2 100755
--- a/distribution/adapters/pom.xml
+++ b/distribution/adapters/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-distribution-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Adapters Distribution Parent
diff --git a/distribution/adapters/tomcat-adapter-zip/pom.xml b/distribution/adapters/tomcat-adapter-zip/pom.xml
index e7678788390a..902e18ffc5f3 100755
--- a/distribution/adapters/tomcat-adapter-zip/pom.xml
+++ b/distribution/adapters/tomcat-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
 
diff --git a/distribution/adapters/tomcat7-adapter-zip/pom.xml b/distribution/adapters/tomcat7-adapter-zip/pom.xml
index 741ad84fc149..21b68a37c793 100755
--- a/distribution/adapters/tomcat7-adapter-zip/pom.xml
+++ b/distribution/adapters/tomcat7-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
 
diff --git a/distribution/adapters/wildfly-adapter/pom.xml b/distribution/adapters/wildfly-adapter/pom.xml
index d40a529f9311..24c67b40c72b 100644
--- a/distribution/adapters/wildfly-adapter/pom.xml
+++ b/distribution/adapters/wildfly-adapter/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-adapters-distribution-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     keycloak-wildfly-adapter-dist
diff --git a/distribution/api-docs-dist/pom.xml b/distribution/api-docs-dist/pom.xml
index 63498b28fa79..d791735b1ef3 100755
--- a/distribution/api-docs-dist/pom.xml
+++ b/distribution/api-docs-dist/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-distribution-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     keycloak-api-docs-dist
diff --git a/distribution/downloads/pom.xml b/distribution/downloads/pom.xml
index 983817e7ea35..8b7aeea8e097 100755
--- a/distribution/downloads/pom.xml
+++ b/distribution/downloads/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-distribution-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     keycloak-dist-downloads
diff --git a/distribution/examples-dist/pom.xml b/distribution/examples-dist/pom.xml
index 5b8610fb2a55..cc533532393a 100755
--- a/distribution/examples-dist/pom.xml
+++ b/distribution/examples-dist/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-distribution-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     keycloak-examples-dist
diff --git a/distribution/feature-packs/adapter-feature-pack/pom.xml b/distribution/feature-packs/adapter-feature-pack/pom.xml
index 38f4e4a1131b..89e6cc9f7a39 100755
--- a/distribution/feature-packs/adapter-feature-pack/pom.xml
+++ b/distribution/feature-packs/adapter-feature-pack/pom.xml
@@ -19,7 +19,7 @@
     
         org.keycloak
         feature-packs-parent
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/distribution/feature-packs/pom.xml b/distribution/feature-packs/pom.xml
index 8fe2fa8d6b96..b2b46d2295dd 100644
--- a/distribution/feature-packs/pom.xml
+++ b/distribution/feature-packs/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-distribution-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Feature Pack Builds
diff --git a/distribution/feature-packs/server-feature-pack/pom.xml b/distribution/feature-packs/server-feature-pack/pom.xml
index 02cda32c5f34..0d1394d0be73 100644
--- a/distribution/feature-packs/server-feature-pack/pom.xml
+++ b/distribution/feature-packs/server-feature-pack/pom.xml
@@ -19,7 +19,7 @@
     
         org.keycloak
         feature-packs-parent
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/distribution/licenses-common/pom.xml b/distribution/licenses-common/pom.xml
index cebb7a89a1e5..155aa7cc1ba4 100644
--- a/distribution/licenses-common/pom.xml
+++ b/distribution/licenses-common/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-distribution-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     keycloak-distribution-licenses-common
diff --git a/distribution/maven-plugins/licenses-processor/pom.xml b/distribution/maven-plugins/licenses-processor/pom.xml
index c6d364008705..08071680d6f1 100644
--- a/distribution/maven-plugins/licenses-processor/pom.xml
+++ b/distribution/maven-plugins/licenses-processor/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-distribution-maven-plugins-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     keycloak-distribution-licenses-maven-plugin
diff --git a/distribution/maven-plugins/pom.xml b/distribution/maven-plugins/pom.xml
index 5707bc45cfab..8cbea173c758 100644
--- a/distribution/maven-plugins/pom.xml
+++ b/distribution/maven-plugins/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-distribution-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     keycloak-distribution-maven-plugins-parent
diff --git a/distribution/pom.xml b/distribution/pom.xml
index 5774ed84523e..3881b3aff08a 100755
--- a/distribution/pom.xml
+++ b/distribution/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
 
diff --git a/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml
index 887d1babc122..c06a8e2a20e6 100755
--- a/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml
+++ b/distribution/saml-adapters/as7-eap6-adapter/as7-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
 
diff --git a/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml
index b624574f39c7..5ac229825c3c 100755
--- a/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml
+++ b/distribution/saml-adapters/as7-eap6-adapter/as7-modules/pom.xml
@@ -25,7 +25,7 @@
     
         keycloak-saml-as7-eap6-adapter-dist-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
 
diff --git a/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml
index 9a02ccc49dd3..fb0bf98a5e70 100755
--- a/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml
+++ b/distribution/saml-adapters/as7-eap6-adapter/eap6-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-saml-as7-eap6-adapter-dist-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
 
diff --git a/distribution/saml-adapters/as7-eap6-adapter/pom.xml b/distribution/saml-adapters/as7-eap6-adapter/pom.xml
index 614ccc69de06..76a05af07cd8 100755
--- a/distribution/saml-adapters/as7-eap6-adapter/pom.xml
+++ b/distribution/saml-adapters/as7-eap6-adapter/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     Keycloak SAML AS7 / JBoss EAP 6 Adapter Distros
diff --git a/distribution/saml-adapters/jetty92-adapter-zip/pom.xml b/distribution/saml-adapters/jetty92-adapter-zip/pom.xml
index 531049bf9202..bc6d9275465d 100755
--- a/distribution/saml-adapters/jetty92-adapter-zip/pom.xml
+++ b/distribution/saml-adapters/jetty92-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
 
diff --git a/distribution/saml-adapters/jetty93-adapter-zip/pom.xml b/distribution/saml-adapters/jetty93-adapter-zip/pom.xml
index 10a37416cf4f..b8f018161fac 100644
--- a/distribution/saml-adapters/jetty93-adapter-zip/pom.xml
+++ b/distribution/saml-adapters/jetty93-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
 
diff --git a/distribution/saml-adapters/jetty94-adapter-zip/pom.xml b/distribution/saml-adapters/jetty94-adapter-zip/pom.xml
index 70d525cd7f33..b550d9ea7c71 100644
--- a/distribution/saml-adapters/jetty94-adapter-zip/pom.xml
+++ b/distribution/saml-adapters/jetty94-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
 
diff --git a/distribution/saml-adapters/pom.xml b/distribution/saml-adapters/pom.xml
index 18bdd937987d..06e204709710 100755
--- a/distribution/saml-adapters/pom.xml
+++ b/distribution/saml-adapters/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-distribution-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     SAML Adapters Distribution Parent
diff --git a/distribution/saml-adapters/tomcat-adapter-zip/pom.xml b/distribution/saml-adapters/tomcat-adapter-zip/pom.xml
index ef432ba7e2d1..912435e122f1 100755
--- a/distribution/saml-adapters/tomcat-adapter-zip/pom.xml
+++ b/distribution/saml-adapters/tomcat-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
 
diff --git a/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml b/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml
index 660669a70790..f75cc3bbc8ef 100755
--- a/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml
+++ b/distribution/saml-adapters/tomcat7-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
 
diff --git a/distribution/saml-adapters/wildfly-adapter/pom.xml b/distribution/saml-adapters/wildfly-adapter/pom.xml
index d6e095c6e6da..060a51cdb9c1 100755
--- a/distribution/saml-adapters/wildfly-adapter/pom.xml
+++ b/distribution/saml-adapters/wildfly-adapter/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../pom.xml
     
     Keycloak Wildfly SAML Adapter
diff --git a/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml b/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml
index 0113ee36cf16..7521477d6234 100755
--- a/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml
+++ b/distribution/saml-adapters/wildfly-adapter/wildfly-adapter-zip/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
 
diff --git a/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml b/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml
index 3c4cab15f6f5..afeafb2b5d0e 100755
--- a/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml
+++ b/distribution/saml-adapters/wildfly-adapter/wildfly-modules/pom.xml
@@ -25,7 +25,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../../../pom.xml
     
 
diff --git a/distribution/server-dist/pom.xml b/distribution/server-dist/pom.xml
index 7ea0da79eba7..6a3366dbd16e 100755
--- a/distribution/server-dist/pom.xml
+++ b/distribution/server-dist/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-distribution-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     keycloak-server-dist
diff --git a/distribution/server-overlay/pom.xml b/distribution/server-overlay/pom.xml
index b587ab412f24..1de9df3891bf 100755
--- a/distribution/server-overlay/pom.xml
+++ b/distribution/server-overlay/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-distribution-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     keycloak-server-overlay
diff --git a/distribution/server-x/pom.xml b/distribution/server-x/pom.xml
index 18ca4dc1161b..243f8b4d98dc 100755
--- a/distribution/server-x/pom.xml
+++ b/distribution/server-x/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-distribution-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     keycloak-server-x
diff --git a/examples/admin-client/pom.xml b/examples/admin-client/pom.xml
index 8abbd7d820de..68e012ebd06b 100755
--- a/examples/admin-client/pom.xml
+++ b/examples/admin-client/pom.xml
@@ -22,7 +22,7 @@
     
         keycloak-examples-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Keycloak Examples - Admin Client
diff --git a/examples/basic-auth/pom.xml b/examples/basic-auth/pom.xml
index 6e05c9df2918..0f5baa25eaed 100755
--- a/examples/basic-auth/pom.xml
+++ b/examples/basic-auth/pom.xml
@@ -23,7 +23,7 @@
     
         keycloak-examples-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Keycloak Examples - Basic Auth
diff --git a/examples/broker/facebook-authentication/pom.xml b/examples/broker/facebook-authentication/pom.xml
index 2538d4be7f90..4bc957c78eed 100755
--- a/examples/broker/facebook-authentication/pom.xml
+++ b/examples/broker/facebook-authentication/pom.xml
@@ -23,7 +23,7 @@
     
         keycloak-examples-broker-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Keycloak Broker Examples - Facebook Authentication
diff --git a/examples/broker/google-authentication/pom.xml b/examples/broker/google-authentication/pom.xml
index 8835da7eefd1..56d65e80b55f 100755
--- a/examples/broker/google-authentication/pom.xml
+++ b/examples/broker/google-authentication/pom.xml
@@ -23,7 +23,7 @@
     
         keycloak-examples-broker-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Keycloak Broker Examples - Google Authentication
diff --git a/examples/broker/pom.xml b/examples/broker/pom.xml
index 1deb5b6da49f..ffbb0ba93405 100755
--- a/examples/broker/pom.xml
+++ b/examples/broker/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-examples-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Broker Examples
diff --git a/examples/broker/saml-broker-authentication/pom.xml b/examples/broker/saml-broker-authentication/pom.xml
index 82ad13bb064c..f0a82e54d8a4 100755
--- a/examples/broker/saml-broker-authentication/pom.xml
+++ b/examples/broker/saml-broker-authentication/pom.xml
@@ -23,7 +23,7 @@
     
         keycloak-examples-broker-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Keycloak Broker Examples - SAML Identity Provider Brokering
diff --git a/examples/broker/twitter-authentication/pom.xml b/examples/broker/twitter-authentication/pom.xml
index c8a65213bc4d..e27e70145313 100755
--- a/examples/broker/twitter-authentication/pom.xml
+++ b/examples/broker/twitter-authentication/pom.xml
@@ -23,7 +23,7 @@
     
         keycloak-examples-broker-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Keycloak Broker Examples - Twitter Authentication
diff --git a/examples/cors/angular-product-app/pom.xml b/examples/cors/angular-product-app/pom.xml
index 1ea743148121..8e59b6e3cc1b 100755
--- a/examples/cors/angular-product-app/pom.xml
+++ b/examples/cors/angular-product-app/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-cors-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/examples/cors/database-service/pom.xml b/examples/cors/database-service/pom.xml
index d29f5154c278..5059dfcdac59 100755
--- a/examples/cors/database-service/pom.xml
+++ b/examples/cors/database-service/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-cors-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/examples/cors/pom.xml b/examples/cors/pom.xml
index c2328da54a4a..676961a11a4b 100755
--- a/examples/cors/pom.xml
+++ b/examples/cors/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Keycloak Examples - CORS
diff --git a/examples/demo-template/admin-access-app/pom.xml b/examples/demo-template/admin-access-app/pom.xml
index 95317f72b217..b43107014209 100755
--- a/examples/demo-template/admin-access-app/pom.xml
+++ b/examples/demo-template/admin-access-app/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-demo-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/examples/demo-template/angular-product-app/pom.xml b/examples/demo-template/angular-product-app/pom.xml
index be9119d6f990..ce18a04bc8f8 100755
--- a/examples/demo-template/angular-product-app/pom.xml
+++ b/examples/demo-template/angular-product-app/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-demo-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/examples/demo-template/customer-app-cli/pom.xml b/examples/demo-template/customer-app-cli/pom.xml
index 868226486f2d..563e5e9ffff9 100755
--- a/examples/demo-template/customer-app-cli/pom.xml
+++ b/examples/demo-template/customer-app-cli/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-demo-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/examples/demo-template/customer-app-filter/pom.xml b/examples/demo-template/customer-app-filter/pom.xml
index b7d75d6ef59f..dfa9106d0581 100755
--- a/examples/demo-template/customer-app-filter/pom.xml
+++ b/examples/demo-template/customer-app-filter/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-demo-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/examples/demo-template/customer-app-js/pom.xml b/examples/demo-template/customer-app-js/pom.xml
index cf7bdac9980a..b9b6805b2c53 100755
--- a/examples/demo-template/customer-app-js/pom.xml
+++ b/examples/demo-template/customer-app-js/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-demo-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/examples/demo-template/customer-app/pom.xml b/examples/demo-template/customer-app/pom.xml
index 348df36e4a99..734552e07d1e 100755
--- a/examples/demo-template/customer-app/pom.xml
+++ b/examples/demo-template/customer-app/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-demo-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/examples/demo-template/database-service/pom.xml b/examples/demo-template/database-service/pom.xml
index e7dd64cd7c14..b888426b6c66 100755
--- a/examples/demo-template/database-service/pom.xml
+++ b/examples/demo-template/database-service/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-demo-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/examples/demo-template/example-ear/pom.xml b/examples/demo-template/example-ear/pom.xml
index ae49cd1bb77f..b56fa199725c 100755
--- a/examples/demo-template/example-ear/pom.xml
+++ b/examples/demo-template/example-ear/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-demo-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/examples/demo-template/offline-access-app/pom.xml b/examples/demo-template/offline-access-app/pom.xml
index b0663bb6e7b9..72bdaad08ee8 100755
--- a/examples/demo-template/offline-access-app/pom.xml
+++ b/examples/demo-template/offline-access-app/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-demo-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/examples/demo-template/pom.xml b/examples/demo-template/pom.xml
index fce2b7d6d378..6ce4b764cc0b 100755
--- a/examples/demo-template/pom.xml
+++ b/examples/demo-template/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-examples-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Demo Examples
diff --git a/examples/demo-template/product-app/pom.xml b/examples/demo-template/product-app/pom.xml
index 84aebfc5eb0d..97f8f2f5bba8 100755
--- a/examples/demo-template/product-app/pom.xml
+++ b/examples/demo-template/product-app/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-demo-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/examples/demo-template/service-account/pom.xml b/examples/demo-template/service-account/pom.xml
index 5bde5100eee8..6ebb71032954 100755
--- a/examples/demo-template/service-account/pom.xml
+++ b/examples/demo-template/service-account/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-demo-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/examples/js-console/pom.xml b/examples/js-console/pom.xml
index 0ab30e5dd01c..9f12dad3ee0e 100755
--- a/examples/js-console/pom.xml
+++ b/examples/js-console/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/examples/kerberos/pom.xml b/examples/kerberos/pom.xml
index 52ca2833d3da..35babbe252ad 100755
--- a/examples/kerberos/pom.xml
+++ b/examples/kerberos/pom.xml
@@ -22,7 +22,7 @@
     
         keycloak-examples-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Keycloak Examples - Kerberos Credential Delegation
diff --git a/examples/ldap/pom.xml b/examples/ldap/pom.xml
index 8a54411f1817..0c1c17cd9f94 100644
--- a/examples/ldap/pom.xml
+++ b/examples/ldap/pom.xml
@@ -22,7 +22,7 @@
     
         keycloak-examples-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/examples/multi-tenant/pom.xml b/examples/multi-tenant/pom.xml
index b2b9101bbef4..f3c1fad3ff37 100755
--- a/examples/multi-tenant/pom.xml
+++ b/examples/multi-tenant/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-examples-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Keycloak Examples - Multi Tenant
diff --git a/examples/pom.xml b/examples/pom.xml
index 3a04f544b6cb..a54c10dd82e2 100755
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Keycloak Examples
diff --git a/examples/providers/authenticator/pom.xml b/examples/providers/authenticator/pom.xml
index 5a1b577d040e..eb9911d1034f 100755
--- a/examples/providers/authenticator/pom.xml
+++ b/examples/providers/authenticator/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-examples-providers-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Authenticator Example
diff --git a/examples/providers/domain-extension/pom.xml b/examples/providers/domain-extension/pom.xml
index f47f26683861..da234c4b505a 100755
--- a/examples/providers/domain-extension/pom.xml
+++ b/examples/providers/domain-extension/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-examples-providers-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Domain Extension Example
diff --git a/examples/providers/pom.xml b/examples/providers/pom.xml
index 65ed90460ba8..9c841b4410e3 100755
--- a/examples/providers/pom.xml
+++ b/examples/providers/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-examples-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Provider Examples
diff --git a/examples/providers/rest/pom.xml b/examples/providers/rest/pom.xml
index 0e3269535601..18bfe176097e 100755
--- a/examples/providers/rest/pom.xml
+++ b/examples/providers/rest/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-examples-providers-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     REST Example
diff --git a/examples/saml/pom.xml b/examples/saml/pom.xml
index acf98c5ecac1..1cd829b2fd1a 100755
--- a/examples/saml/pom.xml
+++ b/examples/saml/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-examples-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     SAML Examples
diff --git a/examples/saml/post-with-encryption/pom.xml b/examples/saml/post-with-encryption/pom.xml
index c398409f1da9..c4406a5d423d 100755
--- a/examples/saml/post-with-encryption/pom.xml
+++ b/examples/saml/post-with-encryption/pom.xml
@@ -22,7 +22,7 @@
     
         keycloak-examples-saml-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     saml-post-encryption
diff --git a/examples/saml/post-with-signature/pom.xml b/examples/saml/post-with-signature/pom.xml
index 4cebaf1acae5..480c89782294 100755
--- a/examples/saml/post-with-signature/pom.xml
+++ b/examples/saml/post-with-signature/pom.xml
@@ -22,7 +22,7 @@
     
         keycloak-examples-saml-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     sales-post-sig
diff --git a/examples/saml/redirect-with-signature/pom.xml b/examples/saml/redirect-with-signature/pom.xml
index 3b36c805fdad..119bf731b000 100755
--- a/examples/saml/redirect-with-signature/pom.xml
+++ b/examples/saml/redirect-with-signature/pom.xml
@@ -22,7 +22,7 @@
     
         keycloak-examples-saml-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     saml-redirect-signatures
diff --git a/examples/saml/servlet-filter/pom.xml b/examples/saml/servlet-filter/pom.xml
index 51d7c8d55620..3e963e168e0b 100755
--- a/examples/saml/servlet-filter/pom.xml
+++ b/examples/saml/servlet-filter/pom.xml
@@ -22,7 +22,7 @@
     
         keycloak-examples-saml-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     saml-servlet-filter
diff --git a/examples/themes/pom.xml b/examples/themes/pom.xml
index 712e15330224..b51f1e1d0657 100755
--- a/examples/themes/pom.xml
+++ b/examples/themes/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-examples-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Themes Examples
diff --git a/federation/kerberos/pom.xml b/federation/kerberos/pom.xml
index e72fe56f1310..9dafb9e46ff7 100755
--- a/federation/kerberos/pom.xml
+++ b/federation/kerberos/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../pom.xml
     
     4.0.0
diff --git a/federation/ldap/pom.xml b/federation/ldap/pom.xml
index e7647f09ffe7..68978ea5b6a0 100755
--- a/federation/ldap/pom.xml
+++ b/federation/ldap/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../pom.xml
     
     4.0.0
diff --git a/federation/pom.xml b/federation/pom.xml
index 4aed73da6415..556f80661138 100755
--- a/federation/pom.xml
+++ b/federation/pom.xml
@@ -22,7 +22,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/federation/sssd/pom.xml b/federation/sssd/pom.xml
index 22f441baec49..d28f1078f13e 100644
--- a/federation/sssd/pom.xml
+++ b/federation/sssd/pom.xml
@@ -4,7 +4,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../pom.xml
     
     4.0.0
diff --git a/integration/admin-client/pom.xml b/integration/admin-client/pom.xml
index ff8144842c71..26788a6adf33 100755
--- a/integration/admin-client/pom.xml
+++ b/integration/admin-client/pom.xml
@@ -22,7 +22,7 @@
     
         keycloak-integration-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/integration/client-cli/admin-cli/pom.xml b/integration/client-cli/admin-cli/pom.xml
index 5f8e4800bff0..b5d4f3b56892 100755
--- a/integration/client-cli/admin-cli/pom.xml
+++ b/integration/client-cli/admin-cli/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-client-cli-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/integration/client-cli/client-cli-dist/pom.xml b/integration/client-cli/client-cli-dist/pom.xml
index e0ab1f97eaed..af772bba32e6 100755
--- a/integration/client-cli/client-cli-dist/pom.xml
+++ b/integration/client-cli/client-cli-dist/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-client-cli-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     keycloak-client-cli-dist
diff --git a/integration/client-cli/client-registration-cli/pom.xml b/integration/client-cli/client-registration-cli/pom.xml
index cf5270dbea47..ed6dcb129114 100755
--- a/integration/client-cli/client-registration-cli/pom.xml
+++ b/integration/client-cli/client-registration-cli/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-client-cli-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/integration/client-cli/pom.xml b/integration/client-cli/pom.xml
index b1b6cef065c0..c97853c08023 100644
--- a/integration/client-cli/pom.xml
+++ b/integration/client-cli/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-integration-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Keycloak Client CLI
diff --git a/integration/client-registration/pom.xml b/integration/client-registration/pom.xml
index 137d20dab913..86fbe53aabdb 100755
--- a/integration/client-registration/pom.xml
+++ b/integration/client-registration/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-integration-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/integration/pom.xml b/integration/pom.xml
index 8997fd0c45b5..1aed86439cd9 100755
--- a/integration/pom.xml
+++ b/integration/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     Keycloak Integration
diff --git a/misc/keycloak-test-helper/pom.xml b/misc/keycloak-test-helper/pom.xml
index 82cd4a202344..8a6a447ade8e 100644
--- a/misc/keycloak-test-helper/pom.xml
+++ b/misc/keycloak-test-helper/pom.xml
@@ -6,7 +6,7 @@
     
         keycloak-misc-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
     org.keycloak
     keycloak-test-helper
diff --git a/misc/pom.xml b/misc/pom.xml
index 4019a88ed0f3..dc43f6b846ba 100644
--- a/misc/pom.xml
+++ b/misc/pom.xml
@@ -3,7 +3,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
     Keycloak Misc
     
diff --git a/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml b/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml
index 30909edb44a5..b94b8c15d2b4 100644
--- a/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml
+++ b/misc/spring-boot-starter/keycloak-spring-boot-starter/pom.xml
@@ -4,7 +4,7 @@
     
         org.keycloak
         keycloak-spring-boot-starter-parent
-        11.0.2
+        11.0.3
     
     keycloak-spring-boot-starter
     Keycloak :: Spring :: Boot :: Default ::  Starter
diff --git a/misc/spring-boot-starter/pom.xml b/misc/spring-boot-starter/pom.xml
index 8b3e7b258d67..8c875f9e5666 100644
--- a/misc/spring-boot-starter/pom.xml
+++ b/misc/spring-boot-starter/pom.xml
@@ -5,7 +5,7 @@
     
         keycloak-misc-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
     org.keycloak
     keycloak-spring-boot-starter-parent
diff --git a/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml b/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml
index e60c23e537a6..8cc816bd8096 100644
--- a/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml
+++ b/misc/spring-legacy-boot-starter/keycloak-legacy-spring-boot-starter/pom.xml
@@ -4,7 +4,7 @@
     
         org.keycloak
         keycloak-legacy-spring-boot-starter-parent
-        11.0.2
+        11.0.3
     
     keycloak-legacy-spring-boot-starter
     Keycloak :: Legacy :: Spring :: Boot :: Default ::  Starter
diff --git a/misc/spring-legacy-boot-starter/pom.xml b/misc/spring-legacy-boot-starter/pom.xml
index 2cf434001a0a..5536c857b55a 100644
--- a/misc/spring-legacy-boot-starter/pom.xml
+++ b/misc/spring-legacy-boot-starter/pom.xml
@@ -5,7 +5,7 @@
     
         keycloak-misc-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
     org.keycloak
     keycloak-legacy-spring-boot-starter-parent
diff --git a/model/infinispan/pom.xml b/model/infinispan/pom.xml
index 766e6c07c956..5cc5ba5b0537 100755
--- a/model/infinispan/pom.xml
+++ b/model/infinispan/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-model-pom
         org.keycloak
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/model/jpa/pom.xml b/model/jpa/pom.xml
index f971f392fe7f..1c2e113aff7e 100755
--- a/model/jpa/pom.xml
+++ b/model/jpa/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-model-pom
         org.keycloak
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/model/map/pom.xml b/model/map/pom.xml
index f35862328394..57431dfd41db 100644
--- a/model/map/pom.xml
+++ b/model/map/pom.xml
@@ -3,7 +3,7 @@
     
         keycloak-model-pom
         org.keycloak
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/model/pom.xml b/model/pom.xml
index 38ed11729098..9117f76ea4e9 100755
--- a/model/pom.xml
+++ b/model/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     Keycloak Model Parent
diff --git a/pom.xml b/pom.xml
index f21a51aabc0f..81c0164f2296 100755
--- a/pom.xml
+++ b/pom.xml
@@ -31,7 +31,7 @@
     
     org.keycloak
     keycloak-parent
-    11.0.2
+    11.0.3
     pom
 
     
diff --git a/quarkus/deployment/pom.xml b/quarkus/deployment/pom.xml
index 0eccc48311bf..d1983ee2cff2 100644
--- a/quarkus/deployment/pom.xml
+++ b/quarkus/deployment/pom.xml
@@ -5,7 +5,7 @@
     
         keycloak-quarkus-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/quarkus/pom.xml b/quarkus/pom.xml
index 3c3d9dc89573..9ddd830cc6ac 100755
--- a/quarkus/pom.xml
+++ b/quarkus/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     Keycloak Quarkus Parent
diff --git a/quarkus/runtime/pom.xml b/quarkus/runtime/pom.xml
index dbf3f70a43cc..931b9f88dcca 100644
--- a/quarkus/runtime/pom.xml
+++ b/quarkus/runtime/pom.xml
@@ -5,7 +5,7 @@
     
         keycloak-quarkus-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/quarkus/server/pom.xml b/quarkus/server/pom.xml
index 70d4716d289a..f60fde715cb6 100644
--- a/quarkus/server/pom.xml
+++ b/quarkus/server/pom.xml
@@ -7,7 +7,7 @@
     
         keycloak-quarkus-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     
diff --git a/release-details b/release-details
index b3f3f8049587..77602d0b1b64 100644
--- a/release-details
+++ b/release-details
@@ -1,3 +1,3 @@
-VERSION=11.0.2
+VERSION=11.0.3
 SHORT_VERSION=11.0
-NPM_VERSION=11.0.2
+NPM_VERSION=11.0.3
diff --git a/saml-core-api/pom.xml b/saml-core-api/pom.xml
index c09383766b60..e83dd76d9109 100755
--- a/saml-core-api/pom.xml
+++ b/saml-core-api/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/saml-core/pom.xml b/saml-core/pom.xml
index 42a78471694e..bdb37e3c0283 100755
--- a/saml-core/pom.xml
+++ b/saml-core/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/server-spi-private/pom.xml b/server-spi-private/pom.xml
index d42e2eae8265..e8d6ba8894b5 100755
--- a/server-spi-private/pom.xml
+++ b/server-spi-private/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/server-spi/pom.xml b/server-spi/pom.xml
index 817326f5410c..9bd654afa8b4 100755
--- a/server-spi/pom.xml
+++ b/server-spi/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/services/pom.xml b/services/pom.xml
index fee98c24a52c..9f660a0a48ef 100755
--- a/services/pom.xml
+++ b/services/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/testsuite/db-allocator-plugin/pom.xml b/testsuite/db-allocator-plugin/pom.xml
index 367c4afe6528..91e804707159 100644
--- a/testsuite/db-allocator-plugin/pom.xml
+++ b/testsuite/db-allocator-plugin/pom.xml
@@ -22,7 +22,7 @@
     
         keycloak-testsuite-pom
         org.keycloak
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/pom.xml b/testsuite/integration-arquillian/pom.xml
index 6b07aa173f97..6f2f422264e4 100644
--- a/testsuite/integration-arquillian/pom.xml
+++ b/testsuite/integration-arquillian/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak
         keycloak-testsuite-pom
-        11.0.2
+        11.0.3
         ../pom.xml
     
     
diff --git a/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml b/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml
index 5e146b108e65..a77e4a965c28 100644
--- a/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/app-server-spi/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml
index 39ac7c3d9e74..ab18cf029c3b 100644
--- a/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/jboss/eap/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-jboss
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml
index 75e35d49e815..2c98fcc6afc4 100644
--- a/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/jboss/eap6/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-jboss
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml
index 800e752029fc..899139f2d4c8 100644
--- a/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/jboss/pom.xml
@@ -22,7 +22,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml
index 85cc48d53c71..93d9a8c5964a 100644
--- a/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/jboss/relative/eap/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-jboss-relative
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml
index 0bd444d378d6..12819faaaa81 100644
--- a/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/jboss/relative/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-jboss
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml
index 6b164b10c460..633b2ebbbb30 100644
--- a/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/jboss/relative/wildfly/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-jboss-relative
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml
index 500154c8452a..836318fcc5e9 100644
--- a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly-deprecated/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-jboss
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml
index bb17af3943b6..9877a3703435 100644
--- a/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/jboss/wildfly/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-jboss
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml
index 790990e01674..21cacc297492 100644
--- a/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/jetty/92/pom.xml
@@ -18,7 +18,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-jetty
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml
index 4bd3442b7c39..6056c5f6c891 100644
--- a/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/jetty/93/pom.xml
@@ -18,7 +18,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-jetty
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml
index 4ef3007d9c84..9741495c8c4b 100644
--- a/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/jetty/94/pom.xml
@@ -18,7 +18,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-jetty
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml
index d23206c81f79..aa688a4a0e26 100644
--- a/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/jetty/common/pom.xml
@@ -18,7 +18,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-jetty
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml b/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml
index 4a69025f240c..1850e9546e9d 100644
--- a/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/jetty/pom.xml
@@ -18,7 +18,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml b/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml
index 5d2c27dd6375..bc31479c0292 100644
--- a/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/karaf/fuse63/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-karaf
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml b/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml
index fdc0b967f731..cc397ccb6c26 100644
--- a/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/karaf/fuse7x/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-karaf
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml b/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml
index 019f35d24449..c632ed84ab84 100644
--- a/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/karaf/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/pom.xml b/testsuite/integration-arquillian/servers/app-server/pom.xml
index c56e8df0bda5..7ac111421fb8 100644
--- a/testsuite/integration-arquillian/servers/app-server/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml
index f004cbe00c85..c5fb794db671 100644
--- a/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/tomcat/common/pom.xml
@@ -5,7 +5,7 @@
     
         integration-arquillian-servers-app-server-tomcat
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml
index d0dc314ef2f5..dab6ae6bfa58 100644
--- a/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/tomcat/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml
index 6f0bd6f57a3c..99fe466f2828 100644
--- a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat7/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-tomcat
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml
index 07ab13d66793..a51f21ef565e 100644
--- a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat8/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-tomcat
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml
index 03f49073dd6f..485184d51eb5 100644
--- a/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/tomcat/tomcat9/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server-tomcat
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml b/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml
index 19c6d07a9323..58c65f6da560 100644
--- a/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml
+++ b/testsuite/integration-arquillian/servers/app-server/undertow/pom.xml
@@ -18,7 +18,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-app-server
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml
index 22f6b9df6f09..439cbcb8e7d3 100644
--- a/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml
+++ b/testsuite/integration-arquillian/servers/auth-server/jboss/eap/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-auth-server-jboss
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml
index cd3cba78f7bf..d7d75aa1d1a2 100644
--- a/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml
+++ b/testsuite/integration-arquillian/servers/auth-server/jboss/legacy/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-auth-server-jboss
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml
index fb36ea426963..e8d788cd37bb 100644
--- a/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml
+++ b/testsuite/integration-arquillian/servers/auth-server/jboss/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-auth-server
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml b/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml
index 86ab6bb3f20d..2b3c603b863a 100644
--- a/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml
+++ b/testsuite/integration-arquillian/servers/auth-server/jboss/wildfly/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-auth-server-jboss
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/auth-server/pom.xml b/testsuite/integration-arquillian/servers/auth-server/pom.xml
index da47f3cb4a67..7d09d7d4575e 100644
--- a/testsuite/integration-arquillian/servers/auth-server/pom.xml
+++ b/testsuite/integration-arquillian/servers/auth-server/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml b/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml
index 46e619165422..ce50bfe4b6a9 100644
--- a/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml
+++ b/testsuite/integration-arquillian/servers/auth-server/quarkus/pom.xml
@@ -5,7 +5,7 @@
     
         integration-arquillian-servers-auth-server
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/auth-server/services/pom.xml b/testsuite/integration-arquillian/servers/auth-server/services/pom.xml
index 0f3bf4228007..f13718919af8 100644
--- a/testsuite/integration-arquillian/servers/auth-server/services/pom.xml
+++ b/testsuite/integration-arquillian/servers/auth-server/services/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-auth-server
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml b/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml
index 53f8d7942ecb..208589f4aa6f 100644
--- a/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml
+++ b/testsuite/integration-arquillian/servers/auth-server/services/testsuite-providers/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-auth-server-services
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-testsuite-providers
diff --git a/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml b/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml
index 8ce74c0f8a76..d3ee9912cdc3 100644
--- a/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml
+++ b/testsuite/integration-arquillian/servers/auth-server/undertow/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-auth-server
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml b/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml
index c27787558a01..259ace322df0 100644
--- a/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml
+++ b/testsuite/integration-arquillian/servers/cache-server/jboss/infinispan/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-cache-server-jboss
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml b/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml
index 5eea16d8a388..433bbf4b9764 100644
--- a/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml
+++ b/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-cache-server-jboss
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml b/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml
index 17d628e1e3ed..c998ebee9d1c 100644
--- a/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml
+++ b/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers-cache-server
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/cache-server/pom.xml b/testsuite/integration-arquillian/servers/cache-server/pom.xml
index cf1a8e3c05a2..3898cce2d8ac 100644
--- a/testsuite/integration-arquillian/servers/cache-server/pom.xml
+++ b/testsuite/integration-arquillian/servers/cache-server/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/migration/pom.xml b/testsuite/integration-arquillian/servers/migration/pom.xml
index 026fb6ef195f..c19ec79983fc 100644
--- a/testsuite/integration-arquillian/servers/migration/pom.xml
+++ b/testsuite/integration-arquillian/servers/migration/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-servers
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/servers/pom.xml b/testsuite/integration-arquillian/servers/pom.xml
index 4a91588b0745..b02f2b88e883 100644
--- a/testsuite/integration-arquillian/servers/pom.xml
+++ b/testsuite/integration-arquillian/servers/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml b/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml
index 00441ae129d3..3baf54559c21 100644
--- a/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/app-profile-jee/pom.xml
@@ -5,7 +5,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-test-apps
-        11.0.2
+        11.0.3
     
     
     keycloak-test-app-profile-jee
diff --git a/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml b/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml
index 57d4e76e4e98..2823928c9ed2 100755
--- a/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/cors/angular-product/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-test-apps-cors-parent
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml b/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml
index 946992280723..fb4ab1d73089 100755
--- a/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/cors/database-service/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-test-apps-cors-parent
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/test-apps/cors/pom.xml b/testsuite/integration-arquillian/test-apps/cors/pom.xml
index 860690a59c9c..5f7826c5ffde 100644
--- a/testsuite/integration-arquillian/test-apps/cors/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/cors/pom.xml
@@ -5,7 +5,7 @@
     
         integration-arquillian-test-apps
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml
index 356f6da780b6..eaca3491fd8b 100755
--- a/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/fuse/camel-fuse7-undertow/pom.xml
@@ -21,7 +21,7 @@
     
         integration-arquillian-test-apps-fuse-parent
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml
index cc196ff4ddad..006135c254d2 100755
--- a/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/fuse/camel/pom.xml
@@ -21,7 +21,7 @@
     
         integration-arquillian-test-apps-fuse-parent
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml
index 832d31c0fe77..f3fe705c3f68 100755
--- a/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/fuse/customer-app-fuse/pom.xml
@@ -21,7 +21,7 @@
     
         integration-arquillian-test-apps-fuse-parent
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml
index 9fb619481ba7..83e543dee3a3 100755
--- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs-fuse7-undertow/pom.xml
@@ -21,7 +21,7 @@
     
         integration-arquillian-test-apps-fuse-parent
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml
index a4317b3bf8d3..df5595c87c91 100755
--- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxrs/pom.xml
@@ -21,7 +21,7 @@
     
         integration-arquillian-test-apps-fuse-parent
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml
index 6ae66481747f..ccf7ea1c3258 100755
--- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws-fuse7-undertow/pom.xml
@@ -21,7 +21,7 @@
     
         integration-arquillian-test-apps-fuse-parent
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml
index f94414442fe3..31d3bba17c72 100755
--- a/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/fuse/cxf-jaxws/pom.xml
@@ -21,7 +21,7 @@
     
         integration-arquillian-test-apps-fuse-parent
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml
index e0e6783b9369..fb06b7e1da1a 100755
--- a/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/fuse/external-config/pom.xml
@@ -21,7 +21,7 @@
     
         integration-arquillian-test-apps-fuse-parent
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
 
     Keycloak Examples - External Config
diff --git a/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml
index 9574e43b2c03..4b22546cd206 100755
--- a/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/fuse/features/pom.xml
@@ -21,7 +21,7 @@
     
         integration-arquillian-test-apps-fuse-parent
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/test-apps/fuse/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/pom.xml
index a7dc41aab9ff..899d64c0a62f 100755
--- a/testsuite/integration-arquillian/test-apps/fuse/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/fuse/pom.xml
@@ -20,7 +20,7 @@
     
         integration-arquillian-test-apps
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
 
     Fuse Test Applications
diff --git a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml
index f97294b08a8f..5d954cc1a6f5 100755
--- a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse/pom.xml
@@ -21,7 +21,7 @@
     
         integration-arquillian-test-apps-fuse-parent
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml
index 2c7b1d329fd8..0012fa81624c 100755
--- a/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/fuse/product-app-fuse7-undertow/pom.xml
@@ -21,7 +21,7 @@
     
         integration-arquillian-test-apps-fuse-parent
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
 
     4.0.0
diff --git a/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml b/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml
index a2adf263af3c..4cee7ad06382 100755
--- a/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/hello-world-authz-service/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-test-apps
-        11.0.2
+        11.0.3
     
 
     hello-world-authz-service
diff --git a/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml b/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml
index 9ead2907141f..4cd899c20b8e 100755
--- a/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/photoz/photoz-html5-client/pom.xml
@@ -5,7 +5,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-test-apps-photoz-parent
-        11.0.2
+        11.0.3
         ../pom.xml
     
 
diff --git a/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml b/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml
index 6760bb6c7529..0e4f3b28ba12 100755
--- a/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/photoz/photoz-restful-api/pom.xml
@@ -6,7 +6,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-test-apps-photoz-parent
-        11.0.2
+        11.0.3
         ../pom.xml
     
 
diff --git a/testsuite/integration-arquillian/test-apps/photoz/pom.xml b/testsuite/integration-arquillian/test-apps/photoz/pom.xml
index 6f51ee1208f3..e4a2259015db 100755
--- a/testsuite/integration-arquillian/test-apps/photoz/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/photoz/pom.xml
@@ -6,7 +6,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-test-apps
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-test-apps-photoz-parent
diff --git a/testsuite/integration-arquillian/test-apps/pom.xml b/testsuite/integration-arquillian/test-apps/pom.xml
index d8fb098e3196..ab3979ab547b 100644
--- a/testsuite/integration-arquillian/test-apps/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/pom.xml
@@ -5,7 +5,7 @@
     
         integration-arquillian
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml b/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml
index e604349849eb..df4f65733b0c 100755
--- a/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/servlet-authz/pom.xml
@@ -6,7 +6,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-test-apps
-        11.0.2
+        11.0.3
     
 
     servlet-authz-app
diff --git a/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml b/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml
index 0483c36fd1d0..f6b8a4257f56 100755
--- a/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/servlet-policy-enforcer/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-test-apps
-        11.0.2
+        11.0.3
     
 
     servlet-policy-enforcer
diff --git a/testsuite/integration-arquillian/test-apps/servlets/pom.xml b/testsuite/integration-arquillian/test-apps/servlets/pom.xml
index b6b3d4867891..05b8e71abacb 100644
--- a/testsuite/integration-arquillian/test-apps/servlets/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/servlets/pom.xml
@@ -5,7 +5,7 @@
     
         integration-arquillian-test-apps
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml b/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml
index 80ef843bc2bd..b76d87c78e8e 100644
--- a/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/spring-boot-adapter-app/pom.xml
@@ -5,7 +5,7 @@
     
         integration-arquillian-test-apps
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml b/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml
index 067f1a738b29..d4fe59c889e5 100644
--- a/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml
+++ b/testsuite/integration-arquillian/test-apps/test-apps-dist/pom.xml
@@ -5,7 +5,7 @@
     
         integration-arquillian-test-apps
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/tests/base/pom.xml b/testsuite/integration-arquillian/tests/base/pom.xml
index 01979803fea2..3a6cedd97445 100644
--- a/testsuite/integration-arquillian/tests/base/pom.xml
+++ b/testsuite/integration-arquillian/tests/base/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml
index b511df39d38d..b2ebfde10141 100644
--- a/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-adapters
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-adapters-jboss
diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml
index 7c7f8954da3e..cd2450628fb8 100644
--- a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/eap/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-adapters-jboss-relative
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-adapters-relative-eap
diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml
index 5f5ad48e3ce1..75ab2c4d74b3 100644
--- a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-adapters-jboss
-        11.0.2
+        11.0.3
     
     
     pom
diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml
index 6f5573c2c601..17ab2795015d 100644
--- a/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/relative/wildfly/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-adapters-jboss-relative
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-adapters-relative-wildfly
diff --git a/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml
index 276d221812c8..c04e8638a019 100644
--- a/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/adapters/jboss/remote/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-adapters-jboss
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-adapters-remote
diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml
index f751a14f1998..ff3337b97f96 100644
--- a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse61/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-adapters-karaf
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-adapters-fuse61
diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml
index f7d5d2424415..3d48db225e20 100644
--- a/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/fuse62/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-adapters-karaf
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-adapters-fuse62
diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml
index 0a6588a93332..cb275536699a 100644
--- a/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/karaf3/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-adapters-karaf
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-adapters-karaf3
diff --git a/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml
index a9b698959553..260097307107 100644
--- a/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/adapters/karaf/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-adapters
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-adapters-karaf
diff --git a/testsuite/integration-arquillian/tests/other/adapters/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/pom.xml
index 194c047d6b89..ec948f4dd70a 100644
--- a/testsuite/integration-arquillian/tests/other/adapters/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/adapters/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-other
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-adapters
diff --git a/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml
index e95ba61d9d6b..e3e304ec79cf 100644
--- a/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/adapters/was/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-adapters
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-adapters-was
diff --git a/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml
index 4945a8ff6d16..d7e09b2af14e 100644
--- a/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/adapters/was/was8/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-adapters-was
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-adapters-was8
diff --git a/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml
index 12ae7ebeb1d6..dbe388550c86 100644
--- a/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/adapters/wls/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-adapters
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-adapters-wls
diff --git a/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml b/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml
index 74d97ce7fd5b..b016b8373c4c 100644
--- a/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/adapters/wls/wls12/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-adapters-wls
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-adapters-wls12
diff --git a/testsuite/integration-arquillian/tests/other/base-ui/pom.xml b/testsuite/integration-arquillian/tests/other/base-ui/pom.xml
index 862f9e4fd78e..83dd48e32c58 100644
--- a/testsuite/integration-arquillian/tests/other/base-ui/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/base-ui/pom.xml
@@ -22,7 +22,7 @@
     
         integration-arquillian-tests-other
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/tests/other/clean-start/pom.xml b/testsuite/integration-arquillian/tests/other/clean-start/pom.xml
index 38bd7b01129b..d11ced98a2b3 100644
--- a/testsuite/integration-arquillian/tests/other/clean-start/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/clean-start/pom.xml
@@ -23,7 +23,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-other
-        11.0.2
+        11.0.3
     
     
     integration-arquillian-tests-smoke-clean-start
diff --git a/testsuite/integration-arquillian/tests/other/console/pom.xml b/testsuite/integration-arquillian/tests/other/console/pom.xml
index 17fd5df67222..78f4c5bc7ad6 100644
--- a/testsuite/integration-arquillian/tests/other/console/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/console/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-other
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-console
diff --git a/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml b/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml
index 13adaa4a1147..d93dbea81fd7 100644
--- a/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/jpa-performance/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-other
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-jpa-performance
diff --git a/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml b/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml
index 7e44ed188d75..0982c62ea8c7 100644
--- a/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/mod_auth_mellon/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-other
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-other-mod_auth_mellon
diff --git a/testsuite/integration-arquillian/tests/other/pom.xml b/testsuite/integration-arquillian/tests/other/pom.xml
index f99e5fe9787b..3b7b3b957773 100644
--- a/testsuite/integration-arquillian/tests/other/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests
-        11.0.2
+        11.0.3
     
 
     integration-arquillian-tests-other
diff --git a/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml b/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml
index 3bceda4b6548..1dd2842f9368 100644
--- a/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/server-config-migration/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian-tests-other
-        11.0.2
+        11.0.3
         ../pom.xml
     
     
diff --git a/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml b/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml
index 722ffcd0ebb5..30feeb87aacf 100644
--- a/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/springboot-tests/pom.xml
@@ -5,7 +5,7 @@
     
         integration-arquillian-tests-other
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/tests/other/sssd/pom.xml b/testsuite/integration-arquillian/tests/other/sssd/pom.xml
index 02bd53350652..cb608a92a60c 100644
--- a/testsuite/integration-arquillian/tests/other/sssd/pom.xml
+++ b/testsuite/integration-arquillian/tests/other/sssd/pom.xml
@@ -5,7 +5,7 @@
     
         integration-arquillian-tests-other
         org.keycloak.testsuite
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/integration-arquillian/tests/pom.xml b/testsuite/integration-arquillian/tests/pom.xml
index 47104574611b..d1326666ad6a 100755
--- a/testsuite/integration-arquillian/tests/pom.xml
+++ b/testsuite/integration-arquillian/tests/pom.xml
@@ -24,7 +24,7 @@
     
         org.keycloak.testsuite
         integration-arquillian
-        11.0.2
+        11.0.3
     
 
     pom
diff --git a/testsuite/integration-arquillian/util/pom.xml b/testsuite/integration-arquillian/util/pom.xml
index b79b01c41886..e070aa14b0d8 100644
--- a/testsuite/integration-arquillian/util/pom.xml
+++ b/testsuite/integration-arquillian/util/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         integration-arquillian
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/testsuite/performance/infinispan/pom.xml b/testsuite/performance/infinispan/pom.xml
index 5f16593bfa29..45a68657e6bf 100644
--- a/testsuite/performance/infinispan/pom.xml
+++ b/testsuite/performance/infinispan/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         performance
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/testsuite/performance/keycloak/pom.xml b/testsuite/performance/keycloak/pom.xml
index cbcaef180273..a056ec5a7449 100644
--- a/testsuite/performance/keycloak/pom.xml
+++ b/testsuite/performance/keycloak/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         performance
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml b/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml
index 673a0f66fc9d..fc9c9af2f0be 100644
--- a/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml
+++ b/testsuite/performance/load-balancer/wildfly-modcluster/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         performance
-        11.0.2
+        11.0.3
         ../../pom.xml
     
     4.0.0
diff --git a/testsuite/performance/pom.xml b/testsuite/performance/pom.xml
index 073d11a48520..68967e3ccc29 100644
--- a/testsuite/performance/pom.xml
+++ b/testsuite/performance/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-testsuite-pom
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/testsuite/performance/tests/pom.xml b/testsuite/performance/tests/pom.xml
index 7cf0eaf802a6..f80c9f4952a9 100644
--- a/testsuite/performance/tests/pom.xml
+++ b/testsuite/performance/tests/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak.testsuite
         performance
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/testsuite/pom.xml b/testsuite/pom.xml
index c48fe3cb895d..a7c4b788171a 100755
--- a/testsuite/pom.xml
+++ b/testsuite/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
     4.0.0
diff --git a/testsuite/utils/pom.xml b/testsuite/utils/pom.xml
index ba032e916495..da8123983c66 100755
--- a/testsuite/utils/pom.xml
+++ b/testsuite/utils/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-testsuite-pom
         org.keycloak
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/themes/pom.xml b/themes/pom.xml
index 6732e47fd424..471814aa71d4 100755
--- a/themes/pom.xml
+++ b/themes/pom.xml
@@ -4,7 +4,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
     4.0.0
 
diff --git a/util/embedded-ldap/pom.xml b/util/embedded-ldap/pom.xml
index 987e6af62a6b..10724ed9d37e 100644
--- a/util/embedded-ldap/pom.xml
+++ b/util/embedded-ldap/pom.xml
@@ -21,7 +21,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../../pom.xml
     
     4.0.0
diff --git a/util/pom.xml b/util/pom.xml
index 945112363f2c..cd1aba5492ac 100644
--- a/util/pom.xml
+++ b/util/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
         ../pom.xml
     
 
diff --git a/wildfly/adduser/pom.xml b/wildfly/adduser/pom.xml
index 4ed59249f0c4..676a7833a6f8 100755
--- a/wildfly/adduser/pom.xml
+++ b/wildfly/adduser/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak
         keycloak-wildfly-parent
-        11.0.2
+        11.0.3
     
 
     keycloak-wildfly-adduser
diff --git a/wildfly/extensions/pom.xml b/wildfly/extensions/pom.xml
index ab035d93a83f..6a15208e84ce 100755
--- a/wildfly/extensions/pom.xml
+++ b/wildfly/extensions/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak
         keycloak-wildfly-parent
-        11.0.2
+        11.0.3
     
 
     keycloak-wildfly-extensions
diff --git a/wildfly/pom.xml b/wildfly/pom.xml
index d0721a744eb3..f9f73e775b01 100755
--- a/wildfly/pom.xml
+++ b/wildfly/pom.xml
@@ -20,7 +20,7 @@
     
         keycloak-parent
         org.keycloak
-        11.0.2
+        11.0.3
     
 
     Keycloak WildFly Integration
diff --git a/wildfly/server-subsystem/pom.xml b/wildfly/server-subsystem/pom.xml
index aad91b6059f7..237b0a315b6a 100755
--- a/wildfly/server-subsystem/pom.xml
+++ b/wildfly/server-subsystem/pom.xml
@@ -21,7 +21,7 @@
     
         org.keycloak
         keycloak-wildfly-parent
-        11.0.2
+        11.0.3
     
 
     keycloak-wildfly-server-subsystem

From a7a1b95676810dcb288fcbed49e98309a8ac29f7 Mon Sep 17 00:00:00 2001
From: Georg Romstorfer <56720952+romge@users.noreply.github.com>
Date: Wed, 9 Dec 2020 14:36:36 +0100
Subject: [PATCH 25/30] Add docker workflow (#1)

Add docker workflow

Co-authored-by: Florian Apolloner 
---
 .github/workflows/ci-docker.yml | 34 +++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)
 create mode 100644 .github/workflows/ci-docker.yml

diff --git a/.github/workflows/ci-docker.yml b/.github/workflows/ci-docker.yml
new file mode 100644
index 000000000000..2bf51caca9e8
--- /dev/null
+++ b/.github/workflows/ci-docker.yml
@@ -0,0 +1,34 @@
+name: Docker CI
+
+on:
+  push:
+    branches:
+      - master
+
+jobs:
+  build:
+    name: Build and push docker image
+    runs-on: ubuntu-latest
+    steps:
+      - name: Check out keycloak/keycloak-containers
+        uses: actions/checkout@v2
+        with:
+          repository: keycloak/keycloak-containers
+      - name: Set up Docker Buildx
+        uses: docker/setup-buildx-action@v1
+      - name: Login to GitHub Container Registry
+        uses: docker/login-action@v1
+        with:
+          registry: ghcr.io
+          username: primesign-services
+          password: ${{ secrets.CR_TOKEN }}
+      - name: Build docker image
+        uses: docker/build-push-action@v2
+        with:
+          context: server
+          file: server/Dockerfile
+          push: true
+          build-args: GIT_REPO=primesign/keycloak
+          cache-from: type=registry,ref=primesign/keycloak:latest
+          cache-to: type=inline
+          tags: ghcr.io/primesign/keycloak:latest
\ No newline at end of file

From de3fcf5d5177479c46e0bfd181c6b97f4db508bc Mon Sep 17 00:00:00 2001
From: Georg Romstorfer <56720952+romge@users.noreply.github.com>
Date: Tue, 22 Dec 2020 12:08:16 +0100
Subject: [PATCH 26/30] KEYCLOAK-22 Add ACR and LOA processing (#2)

---
 .../representations/ClaimsParameter.java      | 68 +++++++++++++++++++
 .../java/org/keycloak/models/Constants.java   |  2 +
 .../DefaultAuthenticationFlow.java            | 60 ++++++++++------
 .../oidc/endpoints/AuthorizationEndpoint.java | 38 +++++++++++
 4 files changed, 149 insertions(+), 19 deletions(-)
 create mode 100644 core/src/main/java/org/keycloak/representations/ClaimsParameter.java

diff --git a/core/src/main/java/org/keycloak/representations/ClaimsParameter.java b/core/src/main/java/org/keycloak/representations/ClaimsParameter.java
new file mode 100644
index 000000000000..0d304f811870
--- /dev/null
+++ b/core/src/main/java/org/keycloak/representations/ClaimsParameter.java
@@ -0,0 +1,68 @@
+package org.keycloak.representations;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.databind.node.ValueNode;
+import java.util.List;
+import java.util.Map;
+
+public class ClaimsParameter {
+
+  @JsonProperty("userinfo")
+  protected Map userinfo;
+
+  @JsonProperty("id_token")
+  protected Map idToken;
+
+  public Map getUserinfo() {
+    return userinfo;
+  }
+
+  public void setUserinfo(Map userinfo) {
+    this.userinfo = userinfo;
+  }
+
+  public Map getIdToken() {
+    return idToken;
+  }
+
+  public void setIdToken(Map idToken) {
+    this.idToken = idToken;
+  }
+
+  public static class ClaimRequest {
+
+    @JsonProperty("essential")
+    protected boolean essential;
+
+    @JsonProperty("value")
+    protected ValueNode value;
+
+    @JsonProperty("values")
+    protected List values;
+
+    public boolean isEssential() {
+      return essential;
+    }
+
+    public void setEssential(boolean essential) {
+      this.essential = essential;
+    }
+
+    public ValueNode getValue() {
+      return value;
+    }
+
+    public void setValue(ValueNode value) {
+      this.value = value;
+    }
+
+    public List getValues() {
+      return values;
+    }
+
+    public void setValues(List values) {
+      this.values = values;
+    }
+  }
+
+}
diff --git a/server-spi-private/src/main/java/org/keycloak/models/Constants.java b/server-spi-private/src/main/java/org/keycloak/models/Constants.java
index 617acf30fc05..5e4b886ec1c3 100755
--- a/server-spi-private/src/main/java/org/keycloak/models/Constants.java
+++ b/server-spi-private/src/main/java/org/keycloak/models/Constants.java
@@ -105,4 +105,6 @@ public final class Constants {
     public static final Pattern CFG_DELIMITER_PATTERN = Pattern.compile("\\s*" + CFG_DELIMITER + "\\s*");
 
     public static final String OFFLINE_ACCESS_SCOPE_CONSENT_TEXT = "${offlineAccessScopeConsentText}";
+
+    public static final String LEVEL_OF_AUTHENTICATION = "level-of-authentication";
 }
diff --git a/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java b/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java
index 4e512a15f7b7..b461f82d4143 100755
--- a/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java
+++ b/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java
@@ -17,26 +17,24 @@
 
 package org.keycloak.authentication;
 
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.stream.Collectors;
+import javax.ws.rs.HttpMethod;
+import javax.ws.rs.core.MultivaluedMap;
+import javax.ws.rs.core.Response;
 import org.jboss.logging.Logger;
 import org.keycloak.OAuth2Constants;
 import org.keycloak.authentication.authenticators.conditional.ConditionalAuthenticator;
 import org.keycloak.models.AuthenticationExecutionModel;
 import org.keycloak.models.AuthenticationFlowModel;
 import org.keycloak.models.Constants;
-import org.keycloak.models.RealmModel;
 import org.keycloak.models.UserModel;
 import org.keycloak.services.ServicesLogger;
 import org.keycloak.sessions.AuthenticationSessionModel;
 
-import javax.ws.rs.HttpMethod;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.Response;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.stream.Collectors;
-
 /**
  * @author Bill Burke
  * @version $Revision: 1 $
@@ -240,7 +238,7 @@ public Response processFlow() {
         fillListsOfExecutions(executions, requiredList, alternativeList);
 
         //handle required elements : all required elements need to be executed
-        boolean requiredElementsSuccessful = true;
+        boolean flowSuccessful = true;
         Iterator requiredIListIterator = requiredList.listIterator();
         while (requiredIListIterator.hasNext()) {
             AuthenticationExecutionModel required = requiredIListIterator.next();
@@ -250,13 +248,13 @@ public Response processFlow() {
                 continue;
             }
             Response response = processSingleFlowExecutionModel(required, true);
-            requiredElementsSuccessful &= processor.isSuccessful(required) || isSetupRequired(required);
+            flowSuccessful = processor.isSuccessful(required) || isSetupRequired(required);
             if (response != null) {
                 return response;
             }
             // Some required elements were not successful and did not return response.
             // We can break as we know that the whole subflow would be considered unsuccessful as well
-            if (!requiredElementsSuccessful) {
+            if (!flowSuccessful) {
                 break;
             }
         }
@@ -264,12 +262,13 @@ public Response processFlow() {
         //Evaluate alternative elements only if there are no required elements. This may also occur if there was only condition elements
         if (requiredList.isEmpty()) {
             //check if an alternative is already successful, in case we are returning in the flow after an action
-            if (alternativeList.stream().anyMatch(alternative -> processor.isSuccessful(alternative) || isSetupRequired(alternative))) {
+            if (isLevelOfAuthenticationSatisfied() && alternativeList.stream().anyMatch(alternative -> processor.isSuccessful(alternative) || isSetupRequired(alternative))) {
                 successful = true;
                 return null;
             }
 
-            //handle alternative elements: the first alternative element to be satisfied is enough
+            //handle alternative elements: the first alternative element to be satisfied is enough if LOA is also satisfied
+            flowSuccessful = false;
             for (AuthenticationExecutionModel alternative : alternativeList) {
                 try {
                     Response response = processSingleFlowExecutionModel(alternative, true);
@@ -277,8 +276,12 @@ public Response processFlow() {
                         return response;
                     }
                     if (processor.isSuccessful(alternative) || isSetupRequired(alternative)) {
-                        successful = true;
-                        return null;
+                        if (isLevelOfAuthenticationSatisfied()) {
+                            successful = true;
+                            return null;
+                        } else {
+                            flowSuccessful = true;
+                        }
                     }
                 } catch (AuthenticationFlowException afe) {
                     //consuming the error is not good here from an administrative point of view, but the user, since he has alternatives, should be able to go to another alternative and continue
@@ -286,8 +289,9 @@ public Response processFlow() {
                     processor.getAuthenticationSession().setExecutionStatus(alternative.getId(), AuthenticationSessionModel.ExecutionStatus.ATTEMPTED);
                 }
             }
-        } else {
-            successful = requiredElementsSuccessful;
+        }
+        if (!flow.isTopLevel() | isLevelOfAuthenticationSatisfied()) {
+            successful = flowSuccessful;
         }
         return null;
     }
@@ -475,6 +479,24 @@ private List createAuthenticationSelectionList(Au
         return AuthenticationSelectionResolver.createAuthenticationSelectionList(processor, model);
     }
 
+    /**
+     * Checks if the Level of Authentication (LOA) has been reached. The LOA can be set by
+     * a specific authenticator. The check wil always return true if the request does not require
+     * a specific LOA.
+     *
+     * @return true if the requested LOA has been reached
+     */
+    private boolean isLevelOfAuthenticationSatisfied() {
+        String requiredLoa = processor.getAuthenticationSession().getAuthNote(Constants.LEVEL_OF_AUTHENTICATION);
+        if (requiredLoa == null) return true;
+        String reachedLoa = processor.getAuthenticationSession().getUserSessionNotes().get(Constants.LEVEL_OF_AUTHENTICATION);
+        if (reachedLoa == null) return false;
+        try {
+            return Integer.parseInt(reachedLoa) < Integer.parseInt(requiredLoa);
+        } catch (NumberFormatException e) {
+            return false;
+        }
+    }
 
     public Response processResult(AuthenticationProcessor.Result result, boolean isAction) {
         AuthenticationExecutionModel execution = result.getExecution();
diff --git a/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java b/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java
index e67a5a992678..1a9b8b8dc837 100755
--- a/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java
+++ b/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java
@@ -17,6 +17,13 @@
 
 package org.keycloak.protocol.oidc.endpoints;
 
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.node.ValueNode;
+import java.io.IOException;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 import org.jboss.logging.Logger;
 import org.keycloak.OAuth2Constants;
 import org.keycloak.OAuthErrorException;
@@ -41,6 +48,8 @@
 import org.keycloak.protocol.oidc.utils.OIDCResponseMode;
 import org.keycloak.protocol.oidc.utils.OIDCResponseType;
 import org.keycloak.protocol.oidc.utils.RedirectUtils;
+import org.keycloak.representations.ClaimsParameter;
+import org.keycloak.representations.IDToken;
 import org.keycloak.services.ErrorPageException;
 import org.keycloak.services.ServicesLogger;
 import org.keycloak.services.Urls;
@@ -52,6 +61,7 @@
 import org.keycloak.services.resources.LoginActionsService;
 import org.keycloak.services.util.CacheControlUtil;
 import org.keycloak.sessions.AuthenticationSessionModel;
+import org.keycloak.util.JsonSerialization;
 import org.keycloak.util.TokenUtil;
 
 import javax.ws.rs.Consumes;
@@ -466,6 +476,14 @@ private void updateAuthenticationSession() {
         if (request.getCodeChallenge() != null) authenticationSession.setClientNote(OIDCLoginProtocol.CODE_CHALLENGE_PARAM, request.getCodeChallenge());
         if (request.getCodeChallengeMethod() != null) authenticationSession.setClientNote(OIDCLoginProtocol.CODE_CHALLENGE_METHOD_PARAM, request.getCodeChallengeMethod());
 
+        if (request.getClaims() != null) {
+            List requiredAcrValues = parseClaimsForRequiredAcrValues(request.getClaims());
+            if (!requiredAcrValues.isEmpty()) {
+                // TODO: transform acr values to loa
+                authenticationSession.setAuthNote(Constants.LEVEL_OF_AUTHENTICATION, "2");
+            }
+        }
+
         if (request.getAdditionalReqParams() != null) {
             for (String paramName : request.getAdditionalReqParams().keySet()) {
                 authenticationSession.setClientNote(LOGIN_SESSION_NOTE_ADDITIONAL_REQ_PARAMS_PREFIX + paramName, request.getAdditionalReqParams().get(paramName));
@@ -473,6 +491,26 @@ private void updateAuthenticationSession() {
         }
     }
 
+    private List parseClaimsForRequiredAcrValues(String claimsParam) {
+        if (claimsParam != null) {
+            try {
+                ClaimsParameter claims = JsonSerialization.readValue(claimsParam, ClaimsParameter.class);
+                Map idTokenClaims = claims.getIdToken();
+                if (idTokenClaims != null) {
+                    ClaimsParameter.ClaimRequest acrClaim = idTokenClaims.get(IDToken.ACR);
+                    if (acrClaim != null && acrClaim.isEssential()) {
+                        List values = acrClaim.getValues();
+                        if (values != null) {
+                            return values.stream().map(JsonNode::asText).collect(Collectors.toList());
+                        }
+                    }
+                }
+            } catch (IOException e) {
+                logger.debugv("Invalid claims parameter:  {0}", claimsParam);
+            }
+        }
+        return Collections.emptyList();
+    }
 
     private Response buildAuthorizationCodeAuthorizationResponse() {
         this.event.event(EventType.LOGIN);

From a45cbba99f6c7bc3b3ddf381dd0b72c4f0c17463 Mon Sep 17 00:00:00 2001
From: Georg Romstorfer <56720952+romge@users.noreply.github.com>
Date: Mon, 11 Jan 2021 09:01:11 +0100
Subject: [PATCH 27/30] KEYCLOAK-23 Add LoaAuthenticator (#3)

---
 .../DefaultAuthenticationFlow.java            | 28 +++++-
 .../browser/SetLoaAuthenticator.java          | 86 +++++++++++++++++
 .../browser/SetLoaAuthenticatorFactory.java   | 93 +++++++++++++++++++
 .../oidc/endpoints/AuthorizationEndpoint.java |  2 +-
 ...ycloak.authentication.AuthenticatorFactory |  1 +
 .../admin/authentication/ProvidersTest.java   |  3 +
 .../messages/admin-messages_en.properties     |  4 +
 7 files changed, 211 insertions(+), 6 deletions(-)
 create mode 100644 services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticator.java
 create mode 100644 services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticatorFactory.java

diff --git a/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java b/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java
index b461f82d4143..dfdd8cbb1815 100755
--- a/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java
+++ b/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java
@@ -32,6 +32,7 @@
 import org.keycloak.models.AuthenticationFlowModel;
 import org.keycloak.models.Constants;
 import org.keycloak.models.UserModel;
+import org.keycloak.models.UserSessionModel;
 import org.keycloak.services.ServicesLogger;
 import org.keycloak.sessions.AuthenticationSessionModel;
 
@@ -487,12 +488,29 @@ private List createAuthenticationSelectionList(Au
      * @return true if the requested LOA has been reached
      */
     private boolean isLevelOfAuthenticationSatisfied() {
-        String requiredLoa = processor.getAuthenticationSession().getAuthNote(Constants.LEVEL_OF_AUTHENTICATION);
-        if (requiredLoa == null) return true;
-        String reachedLoa = processor.getAuthenticationSession().getUserSessionNotes().get(Constants.LEVEL_OF_AUTHENTICATION);
-        if (reachedLoa == null) return false;
+        UserSessionModel userSession = processor.getUserSession();
+        String userSessionLoa;
+        if (userSession == null) {
+            userSessionLoa = null;
+        } else {
+            // Increase the LOA in the user session if a higher LOA has been set in the user session notes.
+            userSessionLoa = userSession.getNote(Constants.LEVEL_OF_AUTHENTICATION);
+            String userSessionNotesLoa = processor.getAuthenticationSession().getUserSessionNotes().get(Constants.LEVEL_OF_AUTHENTICATION);
+            if (userSessionNotesLoa != null && (userSessionLoa == null || Integer.parseInt(userSessionNotesLoa) > Integer.parseInt(userSessionLoa))) {
+                userSession.setNote(Constants.LEVEL_OF_AUTHENTICATION, userSessionNotesLoa);
+            }
+        }
+        // Get the requested LOA. If no LOA has been requested, the check is always satisfied.
+        String requestedLoa = processor.getAuthenticationSession().getClientNote(Constants.LEVEL_OF_AUTHENTICATION);
+        if (requestedLoa == null) return true;
+        // Check if the requested LOA has been reached.
+        String authSessionLoa = processor.getAuthenticationSession().getAuthNote(Constants.LEVEL_OF_AUTHENTICATION);
+        int currentLoa = authSessionLoa == null
+            ? userSessionLoa == null ? -1 : Integer.parseInt(userSessionLoa)
+            : userSessionLoa == null ? Integer.parseInt(authSessionLoa)
+            : Math.max(Integer.parseInt(authSessionLoa), Integer.parseInt(userSessionLoa));
         try {
-            return Integer.parseInt(reachedLoa) < Integer.parseInt(requiredLoa);
+            return currentLoa >= Integer.parseInt(requestedLoa);
         } catch (NumberFormatException e) {
             return false;
         }
diff --git a/services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticator.java b/services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticator.java
new file mode 100644
index 000000000000..d93eca73b706
--- /dev/null
+++ b/services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticator.java
@@ -0,0 +1,86 @@
+package org.keycloak.authentication.authenticators.browser;
+
+import org.jboss.logging.Logger;
+import org.keycloak.authentication.AuthenticationFlowContext;
+import org.keycloak.authentication.Authenticator;
+import org.keycloak.models.Constants;
+import org.keycloak.models.KeycloakSession;
+import org.keycloak.models.RealmModel;
+import org.keycloak.models.UserModel;
+import org.keycloak.sessions.AuthenticationSessionModel;
+
+public class SetLoaAuthenticator implements Authenticator {
+
+  private static final Logger logger = Logger.getLogger(SetLoaAuthenticator.class);
+
+  static final String LEVEL = "loa-level";
+  static final String STORE_IN_USER_SESSION = "loa-store-in-user-session";
+
+  @Override
+  public void authenticate(AuthenticationFlowContext context) {
+    AuthenticationSessionModel authSession = context.getAuthenticationSession();
+    int currentLoa = Math.max(getConfiguredLoa(context), getCurrentLoa(authSession));
+    authSession.setAuthNote(Constants.LEVEL_OF_AUTHENTICATION, String.valueOf(currentLoa));
+    if (isStoreInUserSession(context)) {
+      authSession.setUserSessionNote(Constants.LEVEL_OF_AUTHENTICATION, String.valueOf(currentLoa));
+    }
+    // Checking if the requested LOA has been satisfied is not necessary,
+    // because that is done in the flow processing anyway.
+    context.success();
+  }
+
+  @Override
+  public void action(AuthenticationFlowContext context) {
+  }
+
+  @Override
+  public boolean requiresUser() {
+    return true;
+  }
+
+  @Override
+  public boolean configuredFor(KeycloakSession session, RealmModel realm, UserModel user) {
+    return true;
+  }
+
+  @Override
+  public void setRequiredActions(KeycloakSession session, RealmModel realm, UserModel user) {
+  }
+
+  @Override
+  public void close() {
+  }
+
+  private boolean isStoreInUserSession(AuthenticationFlowContext context) {
+    try {
+      return Boolean.parseBoolean(context.getAuthenticatorConfig().getConfig().get(STORE_IN_USER_SESSION));
+    } catch (NullPointerException | NumberFormatException e) {
+      logger.errorv("Invalid configuration: {0}", STORE_IN_USER_SESSION);
+      return false;
+    }
+  }
+
+  private int getConfiguredLoa(AuthenticationFlowContext context) {
+    try {
+      return Integer.parseInt(context.getAuthenticatorConfig().getConfig().get(LEVEL));
+    } catch (NullPointerException | NumberFormatException e) {
+      logger.errorv("Invalid configuration: {0}", LEVEL);
+      return -1;
+    }
+  }
+
+  private int getCurrentLoa(AuthenticationSessionModel authSession) {
+    String currentLoa = authSession.getAuthNote(Constants.LEVEL_OF_AUTHENTICATION);
+    if (currentLoa == null) {
+      currentLoa = authSession.getUserSessionNotes().get(Constants.LEVEL_OF_AUTHENTICATION);
+      if (currentLoa == null) {
+        return -1;
+      }
+    }
+    try {
+      return Integer.parseInt(currentLoa);
+    } catch (NumberFormatException e) {
+      return -1;
+    }
+  }
+}
diff --git a/services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticatorFactory.java b/services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticatorFactory.java
new file mode 100644
index 000000000000..a322d2df63a9
--- /dev/null
+++ b/services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticatorFactory.java
@@ -0,0 +1,93 @@
+package org.keycloak.authentication.authenticators.browser;
+
+import java.util.List;
+import org.keycloak.Config;
+import org.keycloak.authentication.Authenticator;
+import org.keycloak.authentication.AuthenticatorFactory;
+import org.keycloak.models.AuthenticationExecutionModel;
+import org.keycloak.models.KeycloakSession;
+import org.keycloak.models.KeycloakSessionFactory;
+import org.keycloak.provider.ProviderConfigProperty;
+import org.keycloak.provider.ProviderConfigurationBuilder;
+
+public class SetLoaAuthenticatorFactory implements AuthenticatorFactory {
+
+  private static final String PROVIDER_ID = "set-level-of-authentication";
+  private static final SetLoaAuthenticator SINGLETON = new SetLoaAuthenticator();
+  private static final AuthenticationExecutionModel.Requirement[] REQUIREMENT_CHOICES = new AuthenticationExecutionModel.Requirement[]{
+      AuthenticationExecutionModel.Requirement.REQUIRED, AuthenticationExecutionModel.Requirement.DISABLED
+  };
+
+  private static final List CONFIG = ProviderConfigurationBuilder.create()
+      .property()
+      .name(SetLoaAuthenticator.LEVEL)
+      .label(SetLoaAuthenticator.LEVEL)
+      .helpText(SetLoaAuthenticator.LEVEL + ".tooltip")
+      .type(ProviderConfigProperty.STRING_TYPE)
+      .add()
+      .property()
+      .name(SetLoaAuthenticator.STORE_IN_USER_SESSION)
+      .label(SetLoaAuthenticator.STORE_IN_USER_SESSION)
+      .helpText(SetLoaAuthenticator.STORE_IN_USER_SESSION + ".tooltip")
+      .type(ProviderConfigProperty.BOOLEAN_TYPE)
+      .defaultValue("true")
+      .add()
+      .build();
+
+  @Override
+  public String getDisplayType() {
+    return "Set Level of Authentication";
+  }
+
+  @Override
+  public String getReferenceCategory() {
+    return "loa";
+  }
+
+  @Override
+  public boolean isConfigurable() {
+    return true;
+  }
+
+  @Override
+  public AuthenticationExecutionModel.Requirement[] getRequirementChoices() {
+    return REQUIREMENT_CHOICES;
+  }
+
+  @Override
+  public boolean isUserSetupAllowed() {
+    return false;
+  }
+
+  @Override
+  public String getHelpText() {
+    return "Set the Level of Authentication (LOA).";
+  }
+
+  @Override
+  public List getConfigProperties() {
+    return CONFIG;
+  }
+
+  @Override
+  public Authenticator create(KeycloakSession session) {
+    return SINGLETON;
+  }
+
+  @Override
+  public void init(Config.Scope config) {
+  }
+
+  @Override
+  public void postInit(KeycloakSessionFactory factory) {
+  }
+
+  @Override
+  public void close() {
+  }
+
+  @Override
+  public String getId() {
+    return PROVIDER_ID;
+  }
+}
diff --git a/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java b/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java
index 1a9b8b8dc837..526139c7a08e 100755
--- a/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java
+++ b/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java
@@ -480,7 +480,7 @@ private void updateAuthenticationSession() {
             List requiredAcrValues = parseClaimsForRequiredAcrValues(request.getClaims());
             if (!requiredAcrValues.isEmpty()) {
                 // TODO: transform acr values to loa
-                authenticationSession.setAuthNote(Constants.LEVEL_OF_AUTHENTICATION, "2");
+                authenticationSession.setClientNote(Constants.LEVEL_OF_AUTHENTICATION, "1");
             }
         }
 
diff --git a/services/src/main/resources/META-INF/services/org.keycloak.authentication.AuthenticatorFactory b/services/src/main/resources/META-INF/services/org.keycloak.authentication.AuthenticatorFactory
index c4ee319c14b1..1e27d44ad3b0 100755
--- a/services/src/main/resources/META-INF/services/org.keycloak.authentication.AuthenticatorFactory
+++ b/services/src/main/resources/META-INF/services/org.keycloak.authentication.AuthenticatorFactory
@@ -23,6 +23,7 @@ org.keycloak.authentication.authenticators.browser.OTPFormAuthenticatorFactory
 org.keycloak.authentication.authenticators.browser.ScriptBasedAuthenticatorFactory
 org.keycloak.authentication.authenticators.browser.SpnegoAuthenticatorFactory
 org.keycloak.authentication.authenticators.browser.IdentityProviderAuthenticatorFactory
+org.keycloak.authentication.authenticators.browser.SetLoaAuthenticatorFactory
 org.keycloak.authentication.authenticators.conditional.ConditionalRoleAuthenticatorFactory
 org.keycloak.authentication.authenticators.conditional.ConditionalUserConfiguredAuthenticatorFactory
 org.keycloak.authentication.authenticators.directgrant.ValidateOTP
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/authentication/ProvidersTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/authentication/ProvidersTest.java
index 96e922a76a9c..eb14d8589900 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/authentication/ProvidersTest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/authentication/ProvidersTest.java
@@ -214,6 +214,9 @@ private List> expectedAuthProviders() {
         addProviderInfo(result, "set-attribute", "Set user attribute",
                 "Set a user attribute");
 
+        addProviderInfo(result, "set-level-of-authentication", "Set Level of Authentication",
+            "Set the Level of Authentication (LOA).");
+
         return result;
     }
 
diff --git a/themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties b/themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties
index 12b6a6324dfe..6a0d399b2c88 100644
--- a/themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties
+++ b/themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties
@@ -1174,6 +1174,10 @@ otp-token-period=OTP Token Period
 otp-token-period.tooltip=How many seconds should an OTP token be valid? Defaults to 30 seconds.
 otp-supported-applications=Supported Applications
 otp-supported-applications.tooltip=Applications that are known to work with the current OTP policy
+loa-level=Level of Authentication
+loa-level.tooltip=Sets the Level of Authentication to the specified value.
+loa-store-in-user-session=Store LOA in user session
+loa-store-in-user-session.tooltip=Additionally stores the LOA in the user session.
 table-of-password-policies=Table of Password Policies
 add-policy.placeholder=Add policy...
 policy-type=Policy Type

From f567388fea47d3a4688ba0d77959775c8888a713 Mon Sep 17 00:00:00 2001
From: Georg Romstorfer <56720952+romge@users.noreply.github.com>
Date: Mon, 11 Jan 2021 13:49:07 +0100
Subject: [PATCH 28/30] Add ConditionalLoaAuthenticator (#4)

---
 .../AuthenticationSelectionResolver.java      |  2 +-
 .../authentication/AuthenticatorUtil.java     | 21 +++++
 .../DefaultAuthenticationFlow.java            | 64 +++++----------
 .../browser/CookieAuthenticator.java          |  9 ++-
 .../browser/SetLoaAuthenticator.java          | 18 +----
 .../ConditionalLoaAuthenticator.java          | 48 +++++++++++
 .../ConditionalLoaAuthenticatorFactory.java   | 81 +++++++++++++++++++
 .../oidc/endpoints/AuthorizationEndpoint.java | 14 ++--
 .../keycloak/services/messages/Messages.java  |  2 +
 ...ycloak.authentication.AuthenticatorFactory |  1 +
 .../admin/authentication/ProvidersTest.java   |  4 +-
 .../messages/admin-messages_en.properties     |  2 +
 .../login/messages/messages_en.properties     |  1 +
 13 files changed, 199 insertions(+), 68 deletions(-)
 create mode 100644 services/src/main/java/org/keycloak/authentication/authenticators/conditional/ConditionalLoaAuthenticator.java
 create mode 100644 services/src/main/java/org/keycloak/authentication/authenticators/conditional/ConditionalLoaAuthenticatorFactory.java

diff --git a/services/src/main/java/org/keycloak/authentication/AuthenticationSelectionResolver.java b/services/src/main/java/org/keycloak/authentication/AuthenticationSelectionResolver.java
index fd96f3272908..65726e9e959d 100644
--- a/services/src/main/java/org/keycloak/authentication/AuthenticationSelectionResolver.java
+++ b/services/src/main/java/org/keycloak/authentication/AuthenticationSelectionResolver.java
@@ -201,7 +201,7 @@ private static boolean addAllExecutionsFromSubflow(AuthenticationProcessor proce
 
                 // For conditional execution, we must check if condition is true. Otherwise return false, which means trying next
                 // requiredExecution in the list
-                return !flow.isConditionalSubflowDisabled(ex);
+                return !flow.isConditionalSubflowDisabled(ex, false);
 
             }).findFirst().orElse(null);
 
diff --git a/services/src/main/java/org/keycloak/authentication/AuthenticatorUtil.java b/services/src/main/java/org/keycloak/authentication/AuthenticatorUtil.java
index 1c18b66d57a0..f97d7ae33bea 100755
--- a/services/src/main/java/org/keycloak/authentication/AuthenticatorUtil.java
+++ b/services/src/main/java/org/keycloak/authentication/AuthenticatorUtil.java
@@ -18,7 +18,9 @@
 package org.keycloak.authentication;
 
 import org.keycloak.models.AuthenticationExecutionModel;
+import org.keycloak.models.Constants;
 import org.keycloak.models.RealmModel;
+import org.keycloak.sessions.AuthenticationSessionModel;
 
 import java.util.LinkedList;
 import java.util.List;
@@ -75,4 +77,23 @@ public static boolean isRequired(RealmModel realm, String flowId, String authPro
         }
         return execution.isRequired();
     }
+
+    public static int getRequestedLevelOfAuthentication(AuthenticationSessionModel authSession) {
+        String requestedLoa = authSession.getClientNote(Constants.LEVEL_OF_AUTHENTICATION);
+        return requestedLoa == null ? -1 : Integer.parseInt(requestedLoa);
+    }
+
+    public static int getCurrentLevelOfAuthentication(AuthenticationSessionModel authSession) {
+        String authSessionLoa = authSession.getAuthNote(Constants.LEVEL_OF_AUTHENTICATION);
+        String userSessionLoa = authSession.getUserSessionNotes().get(Constants.LEVEL_OF_AUTHENTICATION);
+        return authSessionLoa == null
+            ? userSessionLoa == null ? -1 : Integer.parseInt(userSessionLoa)
+            : userSessionLoa == null ? Integer.parseInt(authSessionLoa)
+            : Math.max(Integer.parseInt(authSessionLoa), Integer.parseInt(userSessionLoa));
+    }
+
+    public static boolean isLevelOfAuthenticationSatisfied(AuthenticationSessionModel authSession) {
+        return AuthenticatorUtil.getRequestedLevelOfAuthentication(authSession)
+            <= AuthenticatorUtil.getCurrentLevelOfAuthentication(authSession);
+    }
 }
diff --git a/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java b/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java
index dfdd8cbb1815..14aca964c91b 100755
--- a/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java
+++ b/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java
@@ -33,7 +33,9 @@
 import org.keycloak.models.Constants;
 import org.keycloak.models.UserModel;
 import org.keycloak.models.UserSessionModel;
+import org.keycloak.services.ErrorPage;
 import org.keycloak.services.ServicesLogger;
+import org.keycloak.services.messages.Messages;
 import org.keycloak.sessions.AuthenticationSessionModel;
 
 /**
@@ -167,6 +169,8 @@ public Response processAction(String actionExecution) {
     /**
      * Called after "actionExecutionModel" execution is finished (Either successful or attempted). Find the next appropriate authentication
      * flow where the authentication should continue and continue with authentication process.
+     * The method recursively continues with the parent flow
+     * until finally the top flow is processed.
      *
      * @param actionExecutionModel
      * @return Response if some more forms should be displayed during authentication. Null otherwise.
@@ -183,8 +187,8 @@ private Response continueAuthenticationAfterSuccessfulAction(AuthenticationExecu
         } else {
             Response response = processSingleFlowExecutionModel(parentFlowExecution, false);
             if (response == null) {
-                processor.getAuthenticationSession().removeAuthNote(AuthenticationProcessor.CURRENT_AUTHENTICATION_EXECUTION);
-                return processFlow();
+                // the parent flow is now the last action that has been executed, continue with that until the top flow is reached
+                return continueAuthenticationAfterSuccessfulAction(parentFlowExecution);
             } else {
                 return response;
             }
@@ -244,7 +248,8 @@ public Response processFlow() {
         while (requiredIListIterator.hasNext()) {
             AuthenticationExecutionModel required = requiredIListIterator.next();
             //Conditional flows must be considered disabled (non-existent) if their condition evaluates to false.
-            if (required.isConditional() && isConditionalSubflowDisabled(required)) {
+            //If the flow has been processed before it will not be removed to consider its execution status.
+            if (required.isConditional() && !isProcessed(required) && isConditionalSubflowDisabled(required, true)) {
                 requiredIListIterator.remove();
                 continue;
             }
@@ -291,8 +296,11 @@ public Response processFlow() {
                 }
             }
         }
-        if (!flow.isTopLevel() | isLevelOfAuthenticationSatisfied()) {
+        if (!flow.isTopLevel() || isLevelOfAuthenticationSatisfied()) {
             successful = flowSuccessful;
+        } else {
+            throw new AuthenticationFlowException(AuthenticationFlowError.INVALID_CREDENTIALS,
+                ErrorPage.error(processor.getSession(), processor.getAuthenticationSession(), Response.Status.BAD_REQUEST, Messages.INSUFFICIENT_LEVEL_OF_AUTHENTICATION));
         }
         return null;
     }
@@ -326,9 +334,10 @@ void fillListsOfExecutions(List executionsToProces
     /**
      * Checks if the conditional subflow passed in parameter is disabled.
      * @param model
+     * @param storeResult whether to store the result of the conditional evaluations
      * @return
      */
-    boolean isConditionalSubflowDisabled(AuthenticationExecutionModel model) {
+    boolean isConditionalSubflowDisabled(AuthenticationExecutionModel model, boolean storeResult) {
         if (model == null || !model.isAuthenticatorFlow() || !model.isConditional()) {
             return false;
         };
@@ -337,7 +346,7 @@ boolean isConditionalSubflowDisabled(AuthenticationExecutionModel model) {
                 .filter(this::isConditionalAuthenticator)
                 .filter(s -> s.isEnabled())
                 .collect(Collectors.toList());
-        return conditionalAuthenticatorList.isEmpty() || conditionalAuthenticatorList.stream().anyMatch(m-> conditionalNotMatched(m, modelList));
+        return conditionalAuthenticatorList.isEmpty() || conditionalAuthenticatorList.stream().anyMatch(m-> conditionalNotMatched(m, modelList, storeResult));
     }
 
     private boolean isConditionalAuthenticator(AuthenticationExecutionModel model) {
@@ -352,7 +361,7 @@ private AuthenticatorFactory getAuthenticatorFactory(AuthenticationExecutionMode
         return factory;
     }
 
-    private boolean conditionalNotMatched(AuthenticationExecutionModel model, List executionList) {
+    private boolean conditionalNotMatched(AuthenticationExecutionModel model, List executionList, boolean storeResult) {
         AuthenticatorFactory factory = getAuthenticatorFactory(model);
         ConditionalAuthenticator authenticator = (ConditionalAuthenticator) createAuthenticator(factory);
         AuthenticationProcessor.Result context = processor.createAuthenticatorContext(model, authenticator, executionList);
@@ -366,8 +375,11 @@ private boolean conditionalNotMatched(AuthenticationExecutionModel model, List createAuthenticationSelectionList(Au
         return AuthenticationSelectionResolver.createAuthenticationSelectionList(processor, model);
     }
 
-    /**
-     * Checks if the Level of Authentication (LOA) has been reached. The LOA can be set by
-     * a specific authenticator. The check wil always return true if the request does not require
-     * a specific LOA.
-     *
-     * @return true if the requested LOA has been reached
-     */
     private boolean isLevelOfAuthenticationSatisfied() {
-        UserSessionModel userSession = processor.getUserSession();
-        String userSessionLoa;
-        if (userSession == null) {
-            userSessionLoa = null;
-        } else {
-            // Increase the LOA in the user session if a higher LOA has been set in the user session notes.
-            userSessionLoa = userSession.getNote(Constants.LEVEL_OF_AUTHENTICATION);
-            String userSessionNotesLoa = processor.getAuthenticationSession().getUserSessionNotes().get(Constants.LEVEL_OF_AUTHENTICATION);
-            if (userSessionNotesLoa != null && (userSessionLoa == null || Integer.parseInt(userSessionNotesLoa) > Integer.parseInt(userSessionLoa))) {
-                userSession.setNote(Constants.LEVEL_OF_AUTHENTICATION, userSessionNotesLoa);
-            }
-        }
-        // Get the requested LOA. If no LOA has been requested, the check is always satisfied.
-        String requestedLoa = processor.getAuthenticationSession().getClientNote(Constants.LEVEL_OF_AUTHENTICATION);
-        if (requestedLoa == null) return true;
-        // Check if the requested LOA has been reached.
-        String authSessionLoa = processor.getAuthenticationSession().getAuthNote(Constants.LEVEL_OF_AUTHENTICATION);
-        int currentLoa = authSessionLoa == null
-            ? userSessionLoa == null ? -1 : Integer.parseInt(userSessionLoa)
-            : userSessionLoa == null ? Integer.parseInt(authSessionLoa)
-            : Math.max(Integer.parseInt(authSessionLoa), Integer.parseInt(userSessionLoa));
-        try {
-            return currentLoa >= Integer.parseInt(requestedLoa);
-        } catch (NumberFormatException e) {
-            return false;
-        }
+        return AuthenticatorUtil.isLevelOfAuthenticationSatisfied(processor.getAuthenticationSession());
     }
 
     public Response processResult(AuthenticationProcessor.Result result, boolean isAction) {
diff --git a/services/src/main/java/org/keycloak/authentication/authenticators/browser/CookieAuthenticator.java b/services/src/main/java/org/keycloak/authentication/authenticators/browser/CookieAuthenticator.java
index e2e1ee1de44d..6574a972d934 100755
--- a/services/src/main/java/org/keycloak/authentication/authenticators/browser/CookieAuthenticator.java
+++ b/services/src/main/java/org/keycloak/authentication/authenticators/browser/CookieAuthenticator.java
@@ -19,6 +19,8 @@
 
 import org.keycloak.authentication.AuthenticationFlowContext;
 import org.keycloak.authentication.Authenticator;
+import org.keycloak.authentication.AuthenticatorUtil;
+import org.keycloak.models.Constants;
 import org.keycloak.models.KeycloakSession;
 import org.keycloak.models.RealmModel;
 import org.keycloak.models.UserModel;
@@ -46,14 +48,15 @@ public void authenticate(AuthenticationFlowContext context) {
         } else {
             AuthenticationSessionModel clientSession = context.getAuthenticationSession();
             LoginProtocol protocol = context.getSession().getProvider(LoginProtocol.class, clientSession.getProtocol());
+            clientSession.setUserSessionNote(Constants.LEVEL_OF_AUTHENTICATION, authResult.getSession().getNote(Constants.LEVEL_OF_AUTHENTICATION));
+            context.setUser(authResult.getUser());
 
             // Cookie re-authentication is skipped if re-authentication is required
-            if (protocol.requireReauthentication(authResult.getSession(), clientSession)) {
+            if (protocol.requireReauthentication(authResult.getSession(), clientSession)
+                || !AuthenticatorUtil.isLevelOfAuthenticationSatisfied(clientSession)) {
                 context.attempted();
             } else {
                 context.getSession().setAttribute(AuthenticationManager.SSO_AUTH, "true");
-
-                context.setUser(authResult.getUser());
                 context.attachUserSession(authResult.getSession());
                 context.success();
             }
diff --git a/services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticator.java b/services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticator.java
index d93eca73b706..f44905475ec6 100644
--- a/services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticator.java
+++ b/services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticator.java
@@ -3,6 +3,7 @@
 import org.jboss.logging.Logger;
 import org.keycloak.authentication.AuthenticationFlowContext;
 import org.keycloak.authentication.Authenticator;
+import org.keycloak.authentication.AuthenticatorUtil;
 import org.keycloak.models.Constants;
 import org.keycloak.models.KeycloakSession;
 import org.keycloak.models.RealmModel;
@@ -19,7 +20,7 @@ public class SetLoaAuthenticator implements Authenticator {
   @Override
   public void authenticate(AuthenticationFlowContext context) {
     AuthenticationSessionModel authSession = context.getAuthenticationSession();
-    int currentLoa = Math.max(getConfiguredLoa(context), getCurrentLoa(authSession));
+    int currentLoa = Math.max(getConfiguredLoa(context), AuthenticatorUtil.getCurrentLevelOfAuthentication(authSession));
     authSession.setAuthNote(Constants.LEVEL_OF_AUTHENTICATION, String.valueOf(currentLoa));
     if (isStoreInUserSession(context)) {
       authSession.setUserSessionNote(Constants.LEVEL_OF_AUTHENTICATION, String.valueOf(currentLoa));
@@ -68,19 +69,4 @@ private int getConfiguredLoa(AuthenticationFlowContext context) {
       return -1;
     }
   }
-
-  private int getCurrentLoa(AuthenticationSessionModel authSession) {
-    String currentLoa = authSession.getAuthNote(Constants.LEVEL_OF_AUTHENTICATION);
-    if (currentLoa == null) {
-      currentLoa = authSession.getUserSessionNotes().get(Constants.LEVEL_OF_AUTHENTICATION);
-      if (currentLoa == null) {
-        return -1;
-      }
-    }
-    try {
-      return Integer.parseInt(currentLoa);
-    } catch (NumberFormatException e) {
-      return -1;
-    }
-  }
 }
diff --git a/services/src/main/java/org/keycloak/authentication/authenticators/conditional/ConditionalLoaAuthenticator.java b/services/src/main/java/org/keycloak/authentication/authenticators/conditional/ConditionalLoaAuthenticator.java
new file mode 100644
index 000000000000..667f65331f61
--- /dev/null
+++ b/services/src/main/java/org/keycloak/authentication/authenticators/conditional/ConditionalLoaAuthenticator.java
@@ -0,0 +1,48 @@
+package org.keycloak.authentication.authenticators.conditional;
+
+import org.jboss.logging.Logger;
+import org.keycloak.authentication.AuthenticationFlowContext;
+import org.keycloak.authentication.AuthenticatorUtil;
+import org.keycloak.models.KeycloakSession;
+import org.keycloak.models.RealmModel;
+import org.keycloak.models.UserModel;
+import org.keycloak.sessions.AuthenticationSessionModel;
+
+public class ConditionalLoaAuthenticator implements ConditionalAuthenticator {
+
+  static final String LEVEL = "loa-condition-level";
+
+  private static final Logger logger = Logger.getLogger(ConditionalLoaAuthenticator.class);
+
+  @Override
+  public boolean matchCondition(AuthenticationFlowContext context) {
+    AuthenticationSessionModel authSession = context.getAuthenticationSession();
+    int currentLoa = AuthenticatorUtil.getCurrentLevelOfAuthentication(authSession);
+    int requestedLoa = AuthenticatorUtil.getRequestedLevelOfAuthentication(authSession);
+    return currentLoa < 0 && requestedLoa < 0
+        || currentLoa < getConfiguredLoa(context) && currentLoa < requestedLoa;
+  }
+
+  private int getConfiguredLoa(AuthenticationFlowContext context) {
+    try {
+      return Integer.parseInt(context.getAuthenticatorConfig().getConfig().get(LEVEL));
+    } catch (NullPointerException | NumberFormatException e) {
+      logger.errorv("Invalid configuration: {0}", LEVEL);
+      return Integer.MAX_VALUE;
+    }
+  }
+
+  @Override
+  public void action(AuthenticationFlowContext context) { }
+
+  @Override
+  public boolean requiresUser() {
+    return false;
+  }
+
+  @Override
+  public void setRequiredActions(KeycloakSession session, RealmModel realm, UserModel user) { }
+
+  @Override
+  public void close() { }
+}
diff --git a/services/src/main/java/org/keycloak/authentication/authenticators/conditional/ConditionalLoaAuthenticatorFactory.java b/services/src/main/java/org/keycloak/authentication/authenticators/conditional/ConditionalLoaAuthenticatorFactory.java
new file mode 100644
index 000000000000..fad198544e9d
--- /dev/null
+++ b/services/src/main/java/org/keycloak/authentication/authenticators/conditional/ConditionalLoaAuthenticatorFactory.java
@@ -0,0 +1,81 @@
+package org.keycloak.authentication.authenticators.conditional;
+
+import java.util.List;
+import org.keycloak.Config;
+import org.keycloak.models.AuthenticationExecutionModel;
+import org.keycloak.models.KeycloakSessionFactory;
+import org.keycloak.provider.ProviderConfigProperty;
+import org.keycloak.provider.ProviderConfigurationBuilder;
+
+public class ConditionalLoaAuthenticatorFactory implements ConditionalAuthenticatorFactory {
+
+  public static final String PROVIDER_ID = "conditional-level-of-authentication";
+  private static final ConditionalLoaAuthenticator SINGLETON = new ConditionalLoaAuthenticator();
+  private static final AuthenticationExecutionModel.Requirement[] REQUIREMENT_CHOICES = new AuthenticationExecutionModel.Requirement[]{
+      AuthenticationExecutionModel.Requirement.REQUIRED,
+      AuthenticationExecutionModel.Requirement.DISABLED
+  };
+
+  private static final List CONFIG = ProviderConfigurationBuilder.create()
+      .property()
+      .name(ConditionalLoaAuthenticator.LEVEL)
+      .label(ConditionalLoaAuthenticator.LEVEL)
+      .helpText(ConditionalLoaAuthenticator.LEVEL + ".tooltip")
+      .type(ProviderConfigProperty.STRING_TYPE)
+      .add()
+      .build();
+
+  @Override
+  public void init(Config.Scope config) { }
+
+  @Override
+  public void postInit(KeycloakSessionFactory factory) { }
+
+  @Override
+  public void close() { }
+
+  @Override
+  public String getId() {
+    return PROVIDER_ID;
+  }
+
+  @Override
+  public String getDisplayType() {
+    return "Condition - Level of Authentication";
+  }
+
+  @Override
+  public String getReferenceCategory() {
+    return "condition";
+  }
+
+  @Override
+  public boolean isConfigurable() {
+    return true;
+  }
+
+  @Override
+  public AuthenticationExecutionModel.Requirement[] getRequirementChoices() {
+    return REQUIREMENT_CHOICES;
+  }
+
+  @Override
+  public boolean isUserSetupAllowed() {
+    return false;
+  }
+
+  @Override
+  public String getHelpText() {
+    return "Flow is executed only if the configured LOA or a higher one has been requested but not yet satisfied.";
+  }
+
+  @Override
+  public List getConfigProperties() {
+    return CONFIG;
+  }
+
+  @Override
+  public ConditionalAuthenticator getSingleton() {
+    return SINGLETON;
+  }
+}
diff --git a/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java b/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java
index 526139c7a08e..2ac6a67981c1 100755
--- a/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java
+++ b/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java
@@ -478,10 +478,14 @@ private void updateAuthenticationSession() {
 
         if (request.getClaims() != null) {
             List requiredAcrValues = parseClaimsForRequiredAcrValues(request.getClaims());
-            if (!requiredAcrValues.isEmpty()) {
-                // TODO: transform acr values to loa
-                authenticationSession.setClientNote(Constants.LEVEL_OF_AUTHENTICATION, "1");
-            }
+            // TODO: transform acr values to loa
+            requiredAcrValues.stream().mapToInt(acr -> {
+                try {
+                    return Integer.parseInt(acr);
+                } catch (NumberFormatException e) {
+                    throw new ErrorPageException(session, authenticationSession, Response.Status.BAD_REQUEST, Messages.INVALID_PARAMETER, OIDCLoginProtocol.CLAIMS_PARAM);
+                }
+            }).min().ifPresent(loa -> authenticationSession.setClientNote(Constants.LEVEL_OF_AUTHENTICATION, String.valueOf(loa)));
         }
 
         if (request.getAdditionalReqParams() != null) {
@@ -506,7 +510,7 @@ private List parseClaimsForRequiredAcrValues(String claimsParam) {
                     }
                 }
             } catch (IOException e) {
-                logger.debugv("Invalid claims parameter:  {0}", claimsParam);
+                throw new ErrorPageException(session, authenticationSession, Response.Status.BAD_REQUEST, Messages.INVALID_PARAMETER, OIDCLoginProtocol.CLAIMS_PARAM);
             }
         }
         return Collections.emptyList();
diff --git a/services/src/main/java/org/keycloak/services/messages/Messages.java b/services/src/main/java/org/keycloak/services/messages/Messages.java
index 1816c0ae5675..585302a0262e 100755
--- a/services/src/main/java/org/keycloak/services/messages/Messages.java
+++ b/services/src/main/java/org/keycloak/services/messages/Messages.java
@@ -221,6 +221,8 @@ public class Messages {
 
     public static final String IDENTITY_PROVIDER_LOGIN_FAILURE = "identityProviderLoginFailure";
 
+    public static final String INSUFFICIENT_LEVEL_OF_AUTHENTICATION = "insufficientLevelOfAuthentication";
+
     public static final String FAILED_LOGOUT = "failedLogout";
 
     public static final String CONSENT_DENIED="consentDenied";
diff --git a/services/src/main/resources/META-INF/services/org.keycloak.authentication.AuthenticatorFactory b/services/src/main/resources/META-INF/services/org.keycloak.authentication.AuthenticatorFactory
index 1e27d44ad3b0..81773a26057b 100755
--- a/services/src/main/resources/META-INF/services/org.keycloak.authentication.AuthenticatorFactory
+++ b/services/src/main/resources/META-INF/services/org.keycloak.authentication.AuthenticatorFactory
@@ -26,6 +26,7 @@ org.keycloak.authentication.authenticators.browser.IdentityProviderAuthenticator
 org.keycloak.authentication.authenticators.browser.SetLoaAuthenticatorFactory
 org.keycloak.authentication.authenticators.conditional.ConditionalRoleAuthenticatorFactory
 org.keycloak.authentication.authenticators.conditional.ConditionalUserConfiguredAuthenticatorFactory
+org.keycloak.authentication.authenticators.conditional.ConditionalLoaAuthenticatorFactory
 org.keycloak.authentication.authenticators.directgrant.ValidateOTP
 org.keycloak.authentication.authenticators.directgrant.ValidatePassword
 org.keycloak.authentication.authenticators.directgrant.ValidateUsername
diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/authentication/ProvidersTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/authentication/ProvidersTest.java
index eb14d8589900..514dd7b14e25 100644
--- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/authentication/ProvidersTest.java
+++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/authentication/ProvidersTest.java
@@ -215,7 +215,9 @@ private List> expectedAuthProviders() {
                 "Set a user attribute");
 
         addProviderInfo(result, "set-level-of-authentication", "Set Level of Authentication",
-            "Set the Level of Authentication (LOA).");
+                "Set the Level of Authentication (LOA).");
+        addProviderInfo(result, "conditional-level-of-authentication", "Condition - Level of Authentication",
+                "Flow is executed only if the configured LOA or a higher one has been requested but not yet satisfied.");
 
         return result;
     }
diff --git a/themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties b/themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties
index 6a0d399b2c88..abdfe06b7041 100644
--- a/themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties
+++ b/themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties
@@ -1178,6 +1178,8 @@ loa-level=Level of Authentication
 loa-level.tooltip=Sets the Level of Authentication to the specified value.
 loa-store-in-user-session=Store LOA in user session
 loa-store-in-user-session.tooltip=Additionally stores the LOA in the user session.
+loa-condition-level=Level of Authentication
+loa-condition-level.tooltip=If this level of authentication is reached the condition evaluates to false.
 table-of-password-policies=Table of Password Policies
 add-policy.placeholder=Add policy...
 policy-type=Policy Type
diff --git a/themes/src/main/resources/theme/base/login/messages/messages_en.properties b/themes/src/main/resources/theme/base/login/messages/messages_en.properties
index 7a51c2089d60..822a3dfc987c 100755
--- a/themes/src/main/resources/theme/base/login/messages/messages_en.properties
+++ b/themes/src/main/resources/theme/base/login/messages/messages_en.properties
@@ -261,6 +261,7 @@ unexpectedErrorHandlingRequestMessage=Unexpected error when handling authenticat
 invalidAccessCodeMessage=Invalid access code.
 sessionNotActiveMessage=Session not active.
 invalidCodeMessage=An error occurred, please login again through your application.
+insufficientLevelOfAuthentication=The requested level of authentication has not been satisfied.
 identityProviderUnexpectedErrorMessage=Unexpected error when authenticating with identity provider
 identityProviderNotFoundMessage=Could not find an identity provider with the identifier.
 identityProviderLinkSuccess=You successfully verified your email. Please go back to your original browser and continue there with the login.

From 69fe0106bc34f0d05473d3ea6d51851b918d51ca Mon Sep 17 00:00:00 2001
From: Georg Romstorfer <56720952+romge@users.noreply.github.com>
Date: Wed, 20 Jan 2021 11:54:16 +0100
Subject: [PATCH 29/30] KEYCLOAK-21 add LoA to ACR mapping (#5)

---
 .../java/org/keycloak/models/Constants.java   |   3 +
 .../authentication/AuthenticatorUtil.java     |  14 ++-
 .../DefaultAuthenticationFlow.java            |   6 +-
 .../keycloak/protocol/oidc/TokenManager.java  |  41 ++++++-
 .../oidc/endpoints/AuthorizationEndpoint.java |  52 ++++-----
 .../protocol/oidc/utils/AcrUtils.java         | 100 ++++++++++++++++++
 .../messages/admin-messages_en.properties     |   3 +
 .../admin/resources/js/controllers/clients.js |  32 ++++++
 .../resources/partials/client-detail.html     |  21 ++++
 .../keycloak/admin/resources/css/styles.css   |   4 +
 10 files changed, 234 insertions(+), 42 deletions(-)
 create mode 100644 services/src/main/java/org/keycloak/protocol/oidc/utils/AcrUtils.java

diff --git a/server-spi-private/src/main/java/org/keycloak/models/Constants.java b/server-spi-private/src/main/java/org/keycloak/models/Constants.java
index 5e4b886ec1c3..ed63173086db 100755
--- a/server-spi-private/src/main/java/org/keycloak/models/Constants.java
+++ b/server-spi-private/src/main/java/org/keycloak/models/Constants.java
@@ -107,4 +107,7 @@ public final class Constants {
     public static final String OFFLINE_ACCESS_SCOPE_CONSENT_TEXT = "${offlineAccessScopeConsentText}";
 
     public static final String LEVEL_OF_AUTHENTICATION = "level-of-authentication";
+    public static final String REQUESTED_LEVEL_OF_AUTHENTICATION = "requested-level-of-authentication";
+    public static final String FORCE_LEVEL_OF_AUTHENTICATION = "force-level-of-authentication";
+    public static final String ACR_LOA_MAP = "acr.loa.map";
 }
diff --git a/services/src/main/java/org/keycloak/authentication/AuthenticatorUtil.java b/services/src/main/java/org/keycloak/authentication/AuthenticatorUtil.java
index f97d7ae33bea..e37ae251f549 100755
--- a/services/src/main/java/org/keycloak/authentication/AuthenticatorUtil.java
+++ b/services/src/main/java/org/keycloak/authentication/AuthenticatorUtil.java
@@ -17,14 +17,14 @@
 
 package org.keycloak.authentication;
 
+import java.util.LinkedList;
+import java.util.List;
+import org.keycloak.models.AuthenticatedClientSessionModel;
 import org.keycloak.models.AuthenticationExecutionModel;
 import org.keycloak.models.Constants;
 import org.keycloak.models.RealmModel;
 import org.keycloak.sessions.AuthenticationSessionModel;
 
-import java.util.LinkedList;
-import java.util.List;
-
 /**
  * @author Bill Burke
  * @version $Revision: 1 $
@@ -78,9 +78,13 @@ public static boolean isRequired(RealmModel realm, String flowId, String authPro
         return execution.isRequired();
     }
 
+    public static boolean isLevelOfAuthenticationForced(AuthenticationSessionModel authSession) {
+        return Boolean.parseBoolean(authSession.getClientNote(Constants.FORCE_LEVEL_OF_AUTHENTICATION));
+    }
+
     public static int getRequestedLevelOfAuthentication(AuthenticationSessionModel authSession) {
-        String requestedLoa = authSession.getClientNote(Constants.LEVEL_OF_AUTHENTICATION);
-        return requestedLoa == null ? -1 : Integer.parseInt(requestedLoa);
+        String requiredLoa = authSession.getClientNote(Constants.REQUESTED_LEVEL_OF_AUTHENTICATION);
+        return requiredLoa == null ? -1 : Integer.parseInt(requiredLoa);
     }
 
     public static int getCurrentLevelOfAuthentication(AuthenticationSessionModel authSession) {
diff --git a/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java b/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java
index 14aca964c91b..26d9cb314c20 100755
--- a/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java
+++ b/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java
@@ -296,7 +296,7 @@ public Response processFlow() {
                 }
             }
         }
-        if (!flow.isTopLevel() || isLevelOfAuthenticationSatisfied()) {
+        if (!flow.isTopLevel() || isLevelOfAuthenticationSatisfied() || !isLevelOfAuthenticationForced()) {
             successful = flowSuccessful;
         } else {
             throw new AuthenticationFlowException(AuthenticationFlowError.INVALID_CREDENTIALS,
@@ -496,6 +496,10 @@ private boolean isLevelOfAuthenticationSatisfied() {
         return AuthenticatorUtil.isLevelOfAuthenticationSatisfied(processor.getAuthenticationSession());
     }
 
+    private boolean isLevelOfAuthenticationForced() {
+        return AuthenticatorUtil.isLevelOfAuthenticationForced(processor.getAuthenticationSession());
+    }
+
     public Response processResult(AuthenticationProcessor.Result result, boolean isAction) {
         AuthenticationExecutionModel execution = result.getExecution();
         FlowStatus status = result.getStatus();
diff --git a/services/src/main/java/org/keycloak/protocol/oidc/TokenManager.java b/services/src/main/java/org/keycloak/protocol/oidc/TokenManager.java
index 976a1422aaa6..b11a4cd4dea5 100755
--- a/services/src/main/java/org/keycloak/protocol/oidc/TokenManager.java
+++ b/services/src/main/java/org/keycloak/protocol/oidc/TokenManager.java
@@ -17,12 +17,19 @@
 
 package org.keycloak.protocol.oidc;
 
+import com.fasterxml.jackson.core.type.TypeReference;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.node.ValueNode;
+import java.io.IOException;
+import java.util.Collections;
+import java.util.List;
 import org.jboss.logging.Logger;
 import org.jboss.resteasy.spi.HttpRequest;
 import org.keycloak.OAuth2Constants;
 import org.keycloak.OAuthErrorException;
 import org.keycloak.TokenCategory;
 import org.keycloak.TokenVerifier;
+import org.keycloak.authentication.AuthenticatorUtil;
 import org.keycloak.cluster.ClusterProvider;
 import org.keycloak.common.ClientConnection;
 import org.keycloak.common.VerificationException;
@@ -39,6 +46,7 @@
 import org.keycloak.models.ClientModel;
 import org.keycloak.models.ClientScopeModel;
 import org.keycloak.models.ClientSessionContext;
+import org.keycloak.models.Constants;
 import org.keycloak.models.KeycloakSession;
 import org.keycloak.models.ProtocolMapperModel;
 import org.keycloak.models.RealmModel;
@@ -54,9 +62,11 @@
 import org.keycloak.protocol.oidc.mappers.OIDCAccessTokenMapper;
 import org.keycloak.protocol.oidc.mappers.OIDCIDTokenMapper;
 import org.keycloak.protocol.oidc.mappers.UserInfoTokenMapper;
+import org.keycloak.protocol.oidc.utils.AcrUtils;
 import org.keycloak.protocol.oidc.utils.OIDCResponseType;
 import org.keycloak.representations.AccessToken;
 import org.keycloak.representations.AccessTokenResponse;
+import org.keycloak.representations.ClaimsParameter;
 import org.keycloak.representations.IDToken;
 import org.keycloak.representations.JsonWebToken;
 import org.keycloak.representations.RefreshToken;
@@ -68,6 +78,7 @@
 import org.keycloak.services.util.DefaultClientSessionContext;
 import org.keycloak.services.util.MtlsHoKTokenUtil;
 import org.keycloak.sessions.AuthenticationSessionModel;
+import org.keycloak.util.JsonSerialization;
 import org.keycloak.util.TokenUtil;
 
 import javax.ws.rs.core.HttpHeaders;
@@ -77,7 +88,6 @@
 import java.util.Collection;
 import java.util.HashSet;
 import java.util.Map;
-import java.util.Objects;
 import java.util.Set;
 import java.util.stream.Collectors;
 
@@ -442,6 +452,7 @@ public static ClientSessionContext attachAuthenticationSession(KeycloakSession s
             userSession.setNote(entry.getKey(), entry.getValue());
         }
 
+        clientSession.setNote(Constants.LEVEL_OF_AUTHENTICATION, String.valueOf(AuthenticatorUtil.getCurrentLevelOfAuthentication(authSession)));
         clientSession.setTimestamp(Time.currentTime());
 
         // Remove authentication session now
@@ -636,10 +647,7 @@ protected AccessToken initToken(RealmModel realm, ClientModel client, UserModel
         token.setNonce(clientSessionCtx.getAttribute(OIDCLoginProtocol.NONCE_PARAM, String.class));
         token.setScope(clientSessionCtx.getScopeString());
 
-        // Best effort for "acr" value. Use 0 if clientSession was authenticated through cookie ( SSO )
-        // TODO: Add better acr support. See KEYCLOAK-3314
-        String acr = (AuthenticationManager.isSSOAuthentication(clientSession)) ? "0" : "1";
-        token.setAcr(acr);
+        token.setAcr(getAcr(clientSession));
 
         String authTime = session.getNote(AuthenticationManager.AUTH_TIME);
         if (authTime != null) {
@@ -656,6 +664,29 @@ protected AccessToken initToken(RealmModel realm, ClientModel client, UserModel
         return token;
     }
 
+    private String getAcr(AuthenticatedClientSessionModel clientSession) {
+        int loa = Integer.parseInt(clientSession.getNote(Constants.LEVEL_OF_AUTHENTICATION));
+        if (loa == -1) {
+            loa = AuthenticationManager.isSSOAuthentication(clientSession) ? 0 : 1;
+        }
+
+        Map acrLoaMap = AcrUtils.getAcrLoaMap(clientSession.getClient());
+        String acr = AcrUtils.mapLoaToAcr(loa, acrLoaMap, AcrUtils.getRequiredAcrValues(
+            clientSession.getNote(OIDCLoginProtocol.CLAIMS_PARAM)));
+        if (acr == null) {
+            acr = AcrUtils.mapLoaToAcr(loa, acrLoaMap, AcrUtils.getAcrValues(
+                clientSession.getNote(OIDCLoginProtocol.CLAIMS_PARAM),
+                clientSession.getNote(OIDCLoginProtocol.ACR_PARAM)));
+            if (acr == null) {
+                acr = AcrUtils.mapLoaToAcr(loa, acrLoaMap, acrLoaMap.keySet());
+                if (acr == null) {
+                    acr = String.valueOf(loa);
+                }
+            }
+        }
+        return acr;
+    }
+
     private int getTokenExpiration(RealmModel realm, ClientModel client, UserSessionModel userSession,
         AuthenticatedClientSessionModel clientSession, boolean offlineTokenRequested) {
         boolean implicitFlow = false;
diff --git a/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java b/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java
index 2ac6a67981c1..c0c6c1c006e3 100755
--- a/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java
+++ b/services/src/main/java/org/keycloak/protocol/oidc/endpoints/AuthorizationEndpoint.java
@@ -44,6 +44,7 @@
 import org.keycloak.protocol.oidc.TokenManager;
 import org.keycloak.protocol.oidc.endpoints.request.AuthorizationEndpointRequest;
 import org.keycloak.protocol.oidc.endpoints.request.AuthorizationEndpointRequestParserProcessor;
+import org.keycloak.protocol.oidc.utils.AcrUtils;
 import org.keycloak.protocol.oidc.utils.OIDCRedirectUriBuilder;
 import org.keycloak.protocol.oidc.utils.OIDCResponseMode;
 import org.keycloak.protocol.oidc.utils.OIDCResponseType;
@@ -476,16 +477,26 @@ private void updateAuthenticationSession() {
         if (request.getCodeChallenge() != null) authenticationSession.setClientNote(OIDCLoginProtocol.CODE_CHALLENGE_PARAM, request.getCodeChallenge());
         if (request.getCodeChallengeMethod() != null) authenticationSession.setClientNote(OIDCLoginProtocol.CODE_CHALLENGE_METHOD_PARAM, request.getCodeChallengeMethod());
 
-        if (request.getClaims() != null) {
-            List requiredAcrValues = parseClaimsForRequiredAcrValues(request.getClaims());
-            // TODO: transform acr values to loa
-            requiredAcrValues.stream().mapToInt(acr -> {
-                try {
-                    return Integer.parseInt(acr);
-                } catch (NumberFormatException e) {
-                    throw new ErrorPageException(session, authenticationSession, Response.Status.BAD_REQUEST, Messages.INVALID_PARAMETER, OIDCLoginProtocol.CLAIMS_PARAM);
-                }
-            }).min().ifPresent(loa -> authenticationSession.setClientNote(Constants.LEVEL_OF_AUTHENTICATION, String.valueOf(loa)));
+        Map acrLoaMap = AcrUtils.getAcrLoaMap(authenticationSession.getClient());
+        try {
+            List acrValues = AcrUtils.getRequiredAcrValues(request.getClaims());
+            if (acrValues.isEmpty()) {
+                acrValues = AcrUtils.getAcrValues(request.getClaims(), request.getAcr());
+            } else {
+                authenticationSession.setClientNote(Constants.FORCE_LEVEL_OF_AUTHENTICATION, "true");
+            }
+            authenticationSession.setClientNote(Constants.REQUESTED_LEVEL_OF_AUTHENTICATION,
+                String.valueOf(acrValues.stream().mapToInt(acr -> {
+                    try {
+                        Integer loa = acrLoaMap.get(acr);
+                        return loa == null ? Integer.parseInt(acr) : loa;
+                    } catch (NumberFormatException e) {
+                        // this is an unknown acr, we assume it is very high
+                        return Integer.MAX_VALUE;
+                    }
+                }).min().orElse(-1)));
+        } catch (IllegalArgumentException e) {
+            throw new ErrorPageException(session, authenticationSession, Response.Status.BAD_REQUEST, Messages.INVALID_PARAMETER, OIDCLoginProtocol.CLAIMS_PARAM);
         }
 
         if (request.getAdditionalReqParams() != null) {
@@ -495,27 +506,6 @@ private void updateAuthenticationSession() {
         }
     }
 
-    private List parseClaimsForRequiredAcrValues(String claimsParam) {
-        if (claimsParam != null) {
-            try {
-                ClaimsParameter claims = JsonSerialization.readValue(claimsParam, ClaimsParameter.class);
-                Map idTokenClaims = claims.getIdToken();
-                if (idTokenClaims != null) {
-                    ClaimsParameter.ClaimRequest acrClaim = idTokenClaims.get(IDToken.ACR);
-                    if (acrClaim != null && acrClaim.isEssential()) {
-                        List values = acrClaim.getValues();
-                        if (values != null) {
-                            return values.stream().map(JsonNode::asText).collect(Collectors.toList());
-                        }
-                    }
-                }
-            } catch (IOException e) {
-                throw new ErrorPageException(session, authenticationSession, Response.Status.BAD_REQUEST, Messages.INVALID_PARAMETER, OIDCLoginProtocol.CLAIMS_PARAM);
-            }
-        }
-        return Collections.emptyList();
-    }
-
     private Response buildAuthorizationCodeAuthorizationResponse() {
         this.event.event(EventType.LOGIN);
         authenticationSession.setAuthNote(Details.AUTH_TYPE, CODE_AUTH_TYPE);
diff --git a/services/src/main/java/org/keycloak/protocol/oidc/utils/AcrUtils.java b/services/src/main/java/org/keycloak/protocol/oidc/utils/AcrUtils.java
new file mode 100644
index 000000000000..a698710a8fc6
--- /dev/null
+++ b/services/src/main/java/org/keycloak/protocol/oidc/utils/AcrUtils.java
@@ -0,0 +1,100 @@
+package org.keycloak.protocol.oidc.utils;
+
+import com.fasterxml.jackson.core.type.TypeReference;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.node.ValueNode;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+import org.jboss.logging.Logger;
+import org.keycloak.models.ClientModel;
+import org.keycloak.models.Constants;
+import org.keycloak.representations.ClaimsParameter;
+import org.keycloak.representations.IDToken;
+import org.keycloak.util.JsonSerialization;
+
+public class AcrUtils {
+
+  private static final Logger LOGGER = Logger.getLogger(AcrUtils.class);
+
+  public static List getRequiredAcrValues(String claimsParam) {
+    if (claimsParam != null) {
+      ClaimsParameter claims;
+      try {
+        claims = JsonSerialization.readValue(claimsParam, ClaimsParameter.class);
+      } catch (IOException e) {
+        throw new IllegalArgumentException("Invalid claims parameter: " + claimsParam);
+      }
+      Map idTokenClaims = claims.getIdToken();
+      if (idTokenClaims != null) {
+        ClaimsParameter.ClaimRequest acrClaim = idTokenClaims.get(IDToken.ACR);
+        if (acrClaim != null && acrClaim.isEssential()) {
+          List values = acrClaim.getValues();
+          if (values != null) {
+            return values.stream().map(JsonNode::asText).collect(Collectors.toList());
+          }
+        }
+      }
+    }
+    return Collections.emptyList();
+  }
+
+  public static List getAcrValues(String claimsParam, String acrValuesParam) {
+    List acrValues = new ArrayList<>();
+    if (acrValuesParam != null) {
+      acrValues.addAll(Arrays.asList(acrValuesParam.split(" ")));
+    }
+    if (claimsParam != null) {
+      ClaimsParameter claims;
+      try {
+        claims = JsonSerialization.readValue(claimsParam, ClaimsParameter.class);
+      } catch (IOException e) {
+        throw new IllegalArgumentException("Invalid claims parameter: " + claimsParam);
+      }
+      Map idTokenClaims = claims.getIdToken();
+      if (idTokenClaims != null) {
+        ClaimsParameter.ClaimRequest acrClaim = idTokenClaims.get(IDToken.ACR);
+        if (acrClaim != null) {
+          List values = acrClaim.getValues();
+          if (values != null) {
+            acrValues.addAll(values.stream().map(JsonNode::asText).collect(Collectors.toList()));
+          }
+        }
+      }
+    }
+    return acrValues;
+  }
+
+  public static Map getAcrLoaMap(ClientModel client) {
+    String map = client.getAttribute(Constants.ACR_LOA_MAP);
+    if (map == null || map.isEmpty()) {
+      return Collections.emptyMap();
+    }
+    try {
+      return JsonSerialization.readValue(map, new TypeReference>() {});
+    } catch (IOException e) {
+      LOGGER.warn("Invalid client configuration (ACR-LOA map)");
+      return Collections.emptyMap();
+    }
+  }
+
+  public static String mapLoaToAcr(int loa, Map acrLoaMap, Collection acrValues) {
+    String acr = null;
+    if (!acrLoaMap.isEmpty() && !acrValues.isEmpty()) {
+      int maxLoa = 0;
+      for (String requestedAcr : acrValues) {
+        Integer mappedLoa = acrLoaMap.get(requestedAcr);
+        if (mappedLoa != null && mappedLoa > maxLoa && loa >= mappedLoa) {
+          acr = requestedAcr;
+          maxLoa = mappedLoa;
+        }
+      }
+    }
+    return acr;
+  }
+}
diff --git a/themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties b/themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties
index abdfe06b7041..5004f0172494 100644
--- a/themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties
+++ b/themes/src/main/resources/theme/base/admin/messages/admin-messages_en.properties
@@ -1729,6 +1729,9 @@ subjectdn-tooltip=A regular expression for validating Subject DN in the Client C
 pkce-code-challenge-method=Proof Key for Code Exchange Code Challenge Method
 pkce-code-challenge-method.tooltip=Choose which code challenge method for PKCE is used. If not specified, keycloak does not applies PKCE to a client unless the client sends an authorization request with appropriate code challenge and code exchange method.
 
+acr-loa-map=ACR To LOA Mapping
+acr-loa-map.tooltip=Define which ACR (Authentication Context Class Reference) value is mapped to which LOA (Level of Authentication). The ACR can be any value, whereas the LOA must be numeric.
+
 key-not-allowed-here=Key '{{character}}' is not allowed here.
 
 # KEYCLOAK-10927 Implement LDAPv3 Password Modify Extended Operation
diff --git a/themes/src/main/resources/theme/base/admin/resources/js/controllers/clients.js b/themes/src/main/resources/theme/base/admin/resources/js/controllers/clients.js
index b06ee78de1be..259bc2966b57 100755
--- a/themes/src/main/resources/theme/base/admin/resources/js/controllers/clients.js
+++ b/themes/src/main/resources/theme/base/admin/resources/js/controllers/clients.js
@@ -1290,6 +1290,11 @@ module.controller('ClientDetailCtrl', function($scope, realm, client, flows, $ro
                 $scope.displayOnConsentScreen = false;
             }
         }
+        try {
+          $scope.acrLoaMap = JSON.parse($scope.client.attributes["acr.loa.map"] || "{}");
+        } catch (e) {
+          $scope.acrLoaMap = {};
+        }
     }
 
     if (!$scope.create) {
@@ -1411,6 +1416,24 @@ module.controller('ClientDetailCtrl', function($scope, realm, client, flows, $ro
         $scope.clientEdit.attributes['pkce.code.challenge.method'] = $scope.pkceCodeChallengeMethod;
     };
 
+    $scope.$watch('newAcr', function() {
+            $scope.changed = isChanged();
+        }, true);
+    $scope.$watch('newLoa', function() {
+            $scope.changed = isChanged();
+        }, true);
+    $scope.deleteAcrLoaMapping = function(acr) {
+        delete $scope.acrLoaMap[acr];
+        $scope.changed = true;
+    }
+    $scope.addAcrLoaMapping = function() {
+        if ($scope.newLoa.match(/^[0-9]+$/)) {
+            $scope.acrLoaMap[$scope.newAcr] = $scope.newLoa;
+            $scope.newAcr = $scope.newLoa = "";
+            $scope.changed = true;
+        }
+    }
+
     $scope.$watch(function() {
         return $location.path();
     }, function() {
@@ -1427,6 +1450,9 @@ module.controller('ClientDetailCtrl', function($scope, realm, client, flows, $ro
         if ($scope.newWebOrigin && $scope.newWebOrigin.length > 0) {
             return true;
         }
+        if ($scope.newAcr && $scope.newAcr.length > 0 && $scope.newLoa && $scope.newLoa.length > 0) {
+            return true;
+        }
         return false;
     }
 
@@ -1539,6 +1565,10 @@ module.controller('ClientDetailCtrl', function($scope, realm, client, flows, $ro
             $scope.addWebOrigin();
         }
 
+        if ($scope.newAcr && $scope.newAcr.length > 0 && $scope.newLoa && $scope.newLoa.length > 0) {
+          $scope.addAcrLoaMapping();
+        }
+
         if ($scope.samlServerSignature == true) {
             $scope.clientEdit.attributes["saml.server.signature"] = "true";
         } else {
@@ -1618,6 +1648,8 @@ module.controller('ClientDetailCtrl', function($scope, realm, client, flows, $ro
             $scope.clientEdit.attributes["display.on.consent.screen"] = "false";
         }
 
+        $scope.clientEdit.attributes["acr.loa.map"] = JSON.stringify($scope.acrLoaMap);
+
         $scope.clientEdit.protocol = $scope.protocol;
         $scope.clientEdit.attributes['saml.signature.algorithm'] = $scope.signatureAlgorithm;
         $scope.clientEdit.attributes['saml_name_id_format'] = $scope.nameIdFormat;
diff --git a/themes/src/main/resources/theme/base/admin/resources/partials/client-detail.html b/themes/src/main/resources/theme/base/admin/resources/partials/client-detail.html
index c2130d2a1821..5068d1be206e 100755
--- a/themes/src/main/resources/theme/base/admin/resources/partials/client-detail.html
+++ b/themes/src/main/resources/theme/base/admin/resources/partials/client-detail.html
@@ -636,6 +636,27 @@
                 
                 {{:: 'pkce-code-challenge-method.tooltip' | translate}}
             
+
+            
+ +
+
+ + +
+ +
+
+
+ + +
+ +
+
+
+ {{:: 'acr-loa-map.tooltip' | translate}} +
diff --git a/themes/src/main/resources/theme/keycloak/admin/resources/css/styles.css b/themes/src/main/resources/theme/keycloak/admin/resources/css/styles.css index 681b3fc0451c..8c00d98b34aa 100755 --- a/themes/src/main/resources/theme/keycloak/admin/resources/css/styles.css +++ b/themes/src/main/resources/theme/keycloak/admin/resources/css/styles.css @@ -406,6 +406,10 @@ table.kc-authz-table-expanded { font-size: 14px; } +.input-map input.form-control { + width: 50%; +} + /* Deactivation styles for user-group membership tree models */ div[tree-model] li .deactivate { From 9caa9ef9d542ce22c30259fa583e11a4fe22a690 Mon Sep 17 00:00:00 2001 From: romge Date: Fri, 22 Jan 2021 12:19:50 +0100 Subject: [PATCH 30/30] KEYCLOAK-45 Full authentication if no ACR is requested --- .../org/keycloak/authentication/AuthenticatorUtil.java | 5 +++-- .../keycloak/authentication/DefaultAuthenticationFlow.java | 6 +++++- .../authenticators/browser/SetLoaAuthenticator.java | 7 ++++--- .../conditional/ConditionalLoaAuthenticator.java | 4 ++-- 4 files changed, 14 insertions(+), 8 deletions(-) diff --git a/services/src/main/java/org/keycloak/authentication/AuthenticatorUtil.java b/services/src/main/java/org/keycloak/authentication/AuthenticatorUtil.java index e37ae251f549..75f8083b4ff9 100755 --- a/services/src/main/java/org/keycloak/authentication/AuthenticatorUtil.java +++ b/services/src/main/java/org/keycloak/authentication/AuthenticatorUtil.java @@ -97,7 +97,8 @@ public static int getCurrentLevelOfAuthentication(AuthenticationSessionModel aut } public static boolean isLevelOfAuthenticationSatisfied(AuthenticationSessionModel authSession) { - return AuthenticatorUtil.getRequestedLevelOfAuthentication(authSession) - <= AuthenticatorUtil.getCurrentLevelOfAuthentication(authSession); + int requestedLoa = AuthenticatorUtil.getRequestedLevelOfAuthentication(authSession); + int currentLoa = AuthenticatorUtil.getCurrentLevelOfAuthentication(authSession); + return currentLoa >= requestedLoa && requestedLoa >= 0; } } diff --git a/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java b/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java index 26d9cb314c20..9d32ed3e242b 100755 --- a/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java +++ b/services/src/main/java/org/keycloak/authentication/DefaultAuthenticationFlow.java @@ -296,7 +296,7 @@ public Response processFlow() { } } } - if (!flow.isTopLevel() || isLevelOfAuthenticationSatisfied() || !isLevelOfAuthenticationForced()) { + if (!flow.isTopLevel() || isLevelOfAuthenticationSatisfied() || !isLevelOfAuthenticationForced() || isFullAuthenticationRequested()) { successful = flowSuccessful; } else { throw new AuthenticationFlowException(AuthenticationFlowError.INVALID_CREDENTIALS, @@ -492,6 +492,10 @@ private List createAuthenticationSelectionList(Au return AuthenticationSelectionResolver.createAuthenticationSelectionList(processor, model); } + private boolean isFullAuthenticationRequested() { + return AuthenticatorUtil.getRequestedLevelOfAuthentication(processor.getAuthenticationSession()) < 0; + } + private boolean isLevelOfAuthenticationSatisfied() { return AuthenticatorUtil.isLevelOfAuthenticationSatisfied(processor.getAuthenticationSession()); } diff --git a/services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticator.java b/services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticator.java index f44905475ec6..32437a9ca780 100644 --- a/services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticator.java +++ b/services/src/main/java/org/keycloak/authentication/authenticators/browser/SetLoaAuthenticator.java @@ -25,8 +25,9 @@ public void authenticate(AuthenticationFlowContext context) { if (isStoreInUserSession(context)) { authSession.setUserSessionNote(Constants.LEVEL_OF_AUTHENTICATION, String.valueOf(currentLoa)); } - // Checking if the requested LOA has been satisfied is not necessary, - // because that is done in the flow processing anyway. + // This authenticator only sets the LOA. + // It does not check if the requested LOA has been satisfied. + // That is done by the flow processor. context.success(); } @@ -36,7 +37,7 @@ public void action(AuthenticationFlowContext context) { @Override public boolean requiresUser() { - return true; + return false; } @Override diff --git a/services/src/main/java/org/keycloak/authentication/authenticators/conditional/ConditionalLoaAuthenticator.java b/services/src/main/java/org/keycloak/authentication/authenticators/conditional/ConditionalLoaAuthenticator.java index 667f65331f61..f5d3e655a8b0 100644 --- a/services/src/main/java/org/keycloak/authentication/authenticators/conditional/ConditionalLoaAuthenticator.java +++ b/services/src/main/java/org/keycloak/authentication/authenticators/conditional/ConditionalLoaAuthenticator.java @@ -19,8 +19,8 @@ public boolean matchCondition(AuthenticationFlowContext context) { AuthenticationSessionModel authSession = context.getAuthenticationSession(); int currentLoa = AuthenticatorUtil.getCurrentLevelOfAuthentication(authSession); int requestedLoa = AuthenticatorUtil.getRequestedLevelOfAuthentication(authSession); - return currentLoa < 0 && requestedLoa < 0 - || currentLoa < getConfiguredLoa(context) && currentLoa < requestedLoa; + int configuredLoa = getConfiguredLoa(context); + return currentLoa < configuredLoa && (requestedLoa >= configuredLoa || requestedLoa < 0); } private int getConfiguredLoa(AuthenticationFlowContext context) {