Commit graph

244 commits

Author SHA1 Message Date
Hynek Mlnarik
c036980c37 Add TRANSIENT_USERS feature flag 2023-10-25 12:02:35 +02:00
Thomas Darimont
e567210ed1
Add dedicated feature flag for oauth device grant flow (#23892)
Closes #23891
2023-10-24 10:09:26 +02:00
Steven Hawkins
f4d1dd9b7f
improvement: validates the expected values of non-cli properties (#23797)
also adds better messages for unknown options

closes #13608
2023-10-20 17:21:03 +00:00
Steven Hawkins
1f77476281
fix: allows --version to work (#24161)
closes #23783
2023-10-20 11:17:38 +02:00
Alexander Schwartz
8499d2cba3 Separating CLI arguments into separate strings to avoid concatenation
Closes #23965
2023-10-13 21:29:47 +02:00
Steven Hawkins
478ceb0b34
modification of kc.sh to remove param eval (#22585)
* test

* modification of kc.sh to remove eval of env/args

Closes #22337

---------

Co-authored-by: rmartinc <rmartinc@redhat.com>
2023-10-12 17:10:53 +02:00
Martin Bartoš
96204fe349
Ignore UnknownHostException for Quarkus IT (#22035) 2023-10-11 13:59:55 +02:00
Alexander Schwartz
6a78e36d25 Making the readiness probe non-blocking, and backport non-blocking liveness and readiness probes
Closes #22109

Co-authored-by: Martin Bartoš <mabartos@redhat.com>
2023-10-10 08:54:14 +02:00
Martin Bartoš
3e3fb62770
Improve test coverage for Admin hostname properties (#23535)
Closes #23534
2023-10-04 12:50:18 +02:00
Martin Bartoš
c9d93019c2
Remove deprecated auto-build CLI option (#23361)
Closes #23360
2023-09-27 18:56:38 +02:00
Jon Koops
47d9ae71c4
Revert the new welcome screen experience (#23446)
This reverts commit bcab75a7ef.
2023-09-21 16:03:00 +00:00
Pedro Igor
217a09ce46 Switch to Resteasy Reactive
Closes #10713
2023-09-18 09:19:03 -03:00
Jon Koops
bcab75a7ef
Add new version of Welcome theme based on PatternFly 5 (#23008) 2023-09-14 08:24:17 -04:00
Martin Bartoš
a6ae1b9db7
Quarkus IT that use Oracle DB don't work with -Dproduct (#23084)
Fixes #23058
2023-09-08 17:51:22 +02:00
rmartinc
7da52a43bd Add old LinkedIn provider to the deprecated profile
Closes https://github.com/keycloak/keycloak/issues/23067
2023-09-08 10:05:17 +02:00
Alexander Schwartz
2eb37dbe4f Remove MS SQL JDBC driver from the Keycloak product
Closes #22983
2023-09-07 15:30:34 +02:00
Martin Bartoš
6ca78b7554 Return Oracle JDBC driver to the upstream
Closes #22999
2023-09-06 19:11:29 +02:00
Martin Bartoš
b05c79d591
Error message when JDBC driver is missing is not helpful (#22833)
Closes #22795
2023-09-04 14:38:17 +02:00
Martin Bartoš
7c013e8d48
Add a Maven profile to remove GELF support (#22615)
Closes #22515

Co-authored-by: Václav Muzikář <vmuzikar@redhat.com>
2023-08-29 17:03:08 +00:00
Václav Muzikář
1811c39632
Fix cache option defaults in help (#22708)
Closes #22707

Co-authored-by: Stian Thorgersen <stianst@gmail.com>
2023-08-28 12:07:48 +02:00
Thomas Darimont
78262b2b53
Fix deprecated API usage in quarkus module (#22163) (#22165)
- KeycloakConfigSourceProvider implement ConfigBuilder in order to be usable as StaticInitConfigBuilderBuildItem
- KeycloakProcessor
  prefer StaticInitConfigBuilderBuildItem instead of StaticInitConfigSourceProviderBuildItem
  prefer ...deployment.spi.AdditionalJpaModelBuildItem over ...deployment.AdditionalJpaModelBuildItem
- LiquibaseProcessor -> use recommended method declaredAnnotation(..)
- VertxClientCertificateLookup use recommended getSubjectX500Principal() over getSubjectDN()
- DatabaseContainer -> prefer container.getHost() over container.getContainerIpAddress()
- DockerKeycloakDistribution -> replace ResourceReaper with direct DockerClient usage

Fixes #22163
2023-08-02 09:17:51 +02:00
Václav Muzikář
ecdf8e897f
Upgrade to Quarkus 3.2.2.Final (#21912)
Closes #21907
2023-07-26 16:20:23 +02:00
Takashi Norimatsu
0ddef5dda8
DPoP support 1st phase (#21202)
closes #21200


Co-authored-by: Dmitry Telegin <dmitryt@backbase.com>
Co-authored-by: mposolda <mposolda@gmail.com>
2023-07-24 16:44:24 +02:00
Alexander Schwartz
7c9593f88a
Upgrade Infinispan to 14.0.13.Final (#21565)
Closes #21564
2023-07-20 16:59:19 +00:00
Václav Muzikář
776bcbcbd4
Update bcpkix and bcprov dependencies (#21543)
Closes #21360
2023-07-20 11:57:18 +02:00
Alexander Schwartz
a25df4afea
Align database versions in Quarkus integration tests with the root pom (#21512)
Now it is using the same version that is used in the integration test and which is stated in the docs as the tested version.

Closes: #15411
2023-07-10 16:59:26 +02:00
Alexander Schwartz
8bdfb8e1b6 Updating performance information on export/import
Closes: #20703
2023-07-07 09:43:59 -03:00
Peter Zaoral
2b1c29a6f2 Use Quarkus Platform BOM
Closes #20570
Closes #15870

Co-authored-by: Peter Zaoral <pzaoral@redhat.com>
2023-07-06 12:45:48 -03:00
Martin Bartoš
ee205c8fbc
Enable IPv6 dualstack support by default (#21340)
Closes #15003
2023-07-03 13:35:33 +00:00
Pedro Igor
0dd7c4a515 Fixing auth-server-quarkus-embedded 2023-06-21 17:18:26 +02:00
Jon Koops
651a7f29fc
Promote Account Console v3 to preview (#20969) 2023-06-15 12:24:01 -04:00
Pedro Igor
4a85b21eb3
Removing unnecessary message from main command help text (#20692)
Closes #20689
2023-06-01 09:12:39 +02:00
Andre Nascimento
30c7808d9d Clarify the use of '--db-url-properties' option in its description and in the guide.
Closes #12720
2023-05-31 09:41:04 -03:00
stianst
0832992e59 Removing OpenShift integration and moving to separate extension
closes #20496

Co-authored-by: mposolda <mposolda@gmail.com>
2023-05-30 17:39:32 +02:00
Pedro Igor
e9accaf387
Show warning message when overriding build options during starts (#20585)
Closes #20582
2023-05-29 13:21:57 +02:00
Peter Zaoral
34e5884415
SmallRye Keystore (#20375)
* added integration with SmallRye Keystore (keycloak#19281)

Closes #11089

Signed-off-by: Peter Zaoral <pzaoral@redhat.com>
2023-05-25 17:36:20 +02:00
Peter Zaoral
72b238fb48
Keystore vault (#19644)
* KeystoreVault SPI

* added KeystoreVault - a Vault SPI implementation (#19281)

Closes #17252

Signed-off-by: Peter Zaoral <pzaoral@redhat.com>
2023-05-24 16:20:30 +00:00
Václav Muzikář
1aa3e2d7e3
Fix processing of env variable references (#20462)
Closes #20032
2023-05-22 14:48:59 +02:00
Pedro Igor
c17fcd49c8
Support for non-XA databases (#20141) 2023-05-04 19:08:10 +02:00
Martin Bartoš
5a96efad11 Do not display error log for initial admin creation
Closes #15789

Co-authored-by: Steve Weixel <steve.weixel@quantum.com>
2023-04-28 14:36:05 +02:00
Martin Bartoš
e3e1df2dd6 Fix Quarkus IT (zip) tests 2023-04-27 13:36:54 +02:00
Martin Bartoš
8584174099 Change default DB dialects 2023-04-27 13:36:54 +02:00
Martin Bartoš
a895cc1a60 Fix Quarkus IT tests for Quarkus 3 2023-04-27 13:36:54 +02:00
Peter Zaoral
4ff2de7f46 Quarkus3 branch sync
18.1.2023:
* applied Quarkus 3 OpenRewrite recipe
* fixed the parts that were missed by the script

Signed-off-by: Peter Zaoral <pzaoral@redhat.com>
2023-04-27 13:36:54 +02:00
Martin Bartoš
7cff857238 Migrate packages from javax.* to jakarta.*
---
Quarkus3 branch sync no. 14 (24.4.2023)
Resolved conflicts:
keycloak/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/storage/ComponentExportImportTest.java - Modified
keycloak/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/DeclarativeUserTest.java - Modified
keycloak/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/storage/FederatedStorageExportImportTest.java - Modified
keycloak/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/admin/authentication/FlowTest.java - Modified
keycloak/services/src/main/java/org/keycloak/services/resources/admin/UserResource.java	- Modified
---
Quarkus3 branch sync no. 13 (11.4.2023)
Resolved conflicts:
keycloak/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/pages/AccountTotpPage.java - Deleted
keycloak/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/storage/BackwardsCompatibilityUserStorageTest.java - Modified
---
Quarkus3 branch sync no. 12 (31.3.2023)
Resolved conflicts:
keycloak/quarkus/runtime/src/main/java/org/keycloak/quarkus/runtime/services/resources/QuarkusWelcomeResource.java - Modified
keycloak/services/src/main/java/org/keycloak/protocol/saml/profile/util/Soap.java - Modified
keycloak/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/util/UserInfoClientUtil.java - Modified
keycloak/services/src/main/java/org/keycloak/protocol/oidc/endpoints/UserInfoEndpoint.java - Modified
keycloak/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/sessionlimits/UserSessionLimitsTest.java - Modified
---
Quarkus3 branch sync no. 10 (17.3.2023)
Resolved conflicts:
keycloak/services/src/main/java/org/keycloak/protocol/saml/SamlProtocolUtils.java -	Modified
---
Quarkus3 branch sync no. 9 (10.3.2023)
Resolved conflicts:
keycloak/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/federation/kerberos/AbstractKerberosSingleRealmTest.java - Modified
keycloak/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/forms/LoginTest.java - Modified
---
Quarkus3 branch sync no. 8 (3.3.2023)
Resolved conflicts:
keycloak/testsuite/integration-arquillian/tests/base/src/main/java/org/keycloak/testsuite/util/SamlClient.java	Modified - Modified
keycloak/services/src/main/java/org/keycloak/protocol/saml/SamlProtocol.java - Modified
keycloak/examples/providers/authenticator/src/main/java/org/keycloak/examples/authenticator/SecretQuestionAuthenticator.java - Modified
---
Quarkus3 branch sync no. 6 (17.2.2023)
Resolved conflicts:
keycloak/integration/admin-client/src/main/java/org/keycloak/admin/client/resource/ComponentsResource.java - Modified
keycloak/testsuite/utils/src/main/java/org/keycloak/testsuite/KeycloakServer.java - Modified
keycloak/services/src/main/java/org/keycloak/protocol/saml/installation/SamlSPDescriptorClientInstallation.java - Modified
---
Quarkus3 branch sync no. 5 (10.2.2023)
Resolved conflicts:
/keycloak/services/src/main/java/org/keycloak/social/google/GoogleIdentityProvider.java	Modified - Modified
keycloak/services/src/main/java/org/keycloak/social/twitter/TwitterIdentityProvider.java - Modified
---
Quarkus3 branch sync no. 4 (3.2.2023)
Resolved conflicts:
keycloak/quarkus/runtime/src/main/java/org/keycloak/quarkus/runtime/integration/jaxrs/QuarkusKeycloakApplication.java - Modified
---
Quarkus3 branch sync no. 1 (18.1.2023)
Resolved conflicts:
keycloak/testsuite/client/ClientPoliciesTest.java - Deleted
keycloak/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/client/ClientRegistrationTest.java - Modified
keycloak/model/map-jpa/src/main/java/org/keycloak/models/map/storage/jpa/JpaModelCriteriaBuilder.java - Modified
2023-04-27 13:36:54 +02:00
Alexander Schwartz
4f8d67c9fc All commands now auto-reaugment except show-config
Closes #15782
Closes #15898
Closes #17498
2023-04-21 15:06:51 +02:00
Andre Nascimento
a7153af7b0 Port of the custom extension 'Hostname Debug Tool' to Keycloak.
Co-authored-by: stianst <stian@redhat.com>

Closes #15910
2023-04-21 13:53:33 +02:00
Jon Koops
a2eb619e0e
Include Account Console version 3 as a theme (#19641) 2023-04-13 09:41:40 -04:00
mposolda
863d28e232 Promote FIPS 140-2 to supported in Keycloak 22
closes #17234
2023-04-12 15:29:54 +02:00
Pedro Igor
83676bf927 Extract JUnit5 support in the distributoin testsuite to a separate module
Closes #19552
2023-04-11 10:48:56 +02:00
Sebastian Schuster
1c9992fdae
Removed lots of unnecessary quotes and allowed passing quoted argument values
Closes #16189
Closes #16319
2023-04-04 11:53:47 -03:00
Pedro Igor
d857ea8ec2 Removing custom classloader and allow loading drivers at runtime
Closes #13205

Co-authored-by: Brett Lounsbury <brett.lounsbury@nasdaq.com>
2023-03-31 18:05:55 +02:00
Pedro Igor
cda0c9dce0 Avoid initing the profile multiple times during re-augmentation
Closes keycloak#19324
2023-03-27 14:39:48 -03:00
Alexander Schwartz
251f6151e8 Rework the Import SPI to be configurable via the Config API
Also rework the export/import CLI for Quarkus, so that runtime options are available.

Closes #17663
2023-03-24 15:28:55 -03:00
Alexander Schwartz
513bb809f3 Add a map storage global locking implementation for JPA
Closes #14734
2023-03-21 08:21:11 +01:00
Pedro Igor
af475ffe23 Fixing classloading issue due to the curated application being eagerly closed 2023-03-13 09:34:49 +01:00
vramik
31e4c5cb7e Add storage-jpa-db property into Quarkus. Distinguish postgres and crdb for jpa map store.
Closes #17305
2023-03-09 11:09:56 +01:00
Jon Koops
972ebb9650
Use a valid SemVer format for the SNAPSHOT version (#17334)
* Use a valid SemVer format for the SNAPSHOT version

* Update pom.xml

* Update pom.xml

---------

Co-authored-by: Stian Thorgersen <stianst@gmail.com>
Co-authored-by: Stian Thorgersen <stian@redhat.com>
2023-03-03 11:11:44 +01:00
Pedro Igor
2b98fcdecb Support for standard Forwarded header
Closes #11580
2023-02-22 19:28:04 +01:00
rmartinc
f91ac2970d
Polish fips-mode switch for preview (#17228)
* Polish fips-mode switch for preview
Closes #17208 #17210 


Co-authored-by: mposolda <mposolda@gmail.com>
2023-02-22 12:12:52 +01:00
mposolda
4f068fcdcc Make https-trust-store-type set to bcfks by default in strict-mode
Closes #17119
2023-02-16 08:00:21 -03:00
Pedro Igor
3be2775f9e Do not enable storage chm by default if db option is set 2023-02-16 08:30:45 +01:00
Alex Szczuczko
6319b462c7 Upgrade to ubi9 parent image
This PR switches the Quarkus Dockerfile to use `ubi9` parent images instead of `ubi8` ones.

ubi-null.sh has some minor changes to handle differences in RHEL 9. It's also been renamed.

Closes #17057
2023-02-14 09:46:58 +01:00
Václav Muzikář
a266cdcba9 Fix bug, add tests 2023-02-13 17:09:36 -03:00
Pedro Igor
2059ffb219 Make sure the distribution is using FIPS providers
Closes #12428
2023-02-10 17:26:55 +01:00
Pedro Igor
22e256149c Make it possible to run the embedded distribution in FIPS mode
Closes keycloak#16962
2023-02-09 16:14:01 -03:00
Alex Szczuczko
610e3044ad Minimize the RPM content of the Quarkus container
Even though we use `ubi8-minimal` as the parent of our container, it
still has many RPMs installed that aren't necessary to run the Keycloak
server. Also, since the JDK RPM (that we install on top of
`ubi8-minimal`) is designed for general use, it pulls in more dependency
RPMs than it strictly needs to, like cups and avahi. Keycloak will never
need to access a printer itself!

Trimming down these excess RPMs will improve our CVE statistics with
automated scanners, and therefore let us perform fewer CVE rebuilds.

`ubi8-null.sh` uses the low-level `rpm` command to identify and forcibly
remove dependencies and operating system files that are not required to
boot our Quarkus-based server. This includes `microdnf` and `rpm`
itself! I have preserved bash however, so it's still possible to debug
the container from a shell.

I've created an initial set of allow/disallow lists, that seems to pass
a smoke test (server boots, admin console works). This leaves 37
packages installed, with 96 removed relative to `ubi8-minimal`. We could
go more minimal than this, or less minimal if required. Trial and error
is required.

Closes #16902
2023-02-09 11:20:09 +01:00
vramik
fc9e9e6fda Add support for file store configuration into Quarkus
Closes #16821
2023-02-08 14:49:53 +01:00
Stian Thorgersen
4782a85166
Remove old admin console feature (#16861)
* Remove old admin console feature

Closes #16860

* Update help txt files for Quarkus tests
2023-02-07 12:59:35 +01:00
Pedro Igor
263e86e434 Support paths without a beginning slash when setting the root path
Closes #16002
2023-02-02 17:41:22 +01:00
Pedro Igor
b5fb528508 Do not enable caching metrics by default and provide a guide
Closes #16751
2023-02-01 18:55:43 +01:00
mposolda
a804400c84 Added KERBEROS feature. Disable it when running tests on FIPS
closes #14966
2023-01-25 18:38:46 +01:00
Sebastian Schuster
54c34dc75b 15901 enabled Infinispan metrics 2023-01-25 04:26:35 -08:00
Pedro Igor
33cb1ad7cd Support runnning tests using an embedded distribution
Closes #16420
2023-01-13 12:03:36 -08:00
Pedro Igor
4d2f86202d Remove Hashicorp Support
Closes #9144
2023-01-13 15:52:19 +01:00
Pedro Igor
6ac65f62d7 tests 2023-01-12 12:19:40 -08:00
Pedro Igor
522bf1c0b0 Keep consistency when importing realms at startup when they are exported via the export command
Closes #16281

Co-authored-by: Martin Bartoš <mabartos@redhat.com>
2023-01-06 18:53:01 +01:00
Alexander Schwartz
0fee33bb95 Normalize JVM heap usage in tests and handle OOM situations
Closes #16089
2022-12-20 13:26:07 +01:00
Alexander Schwartz
1d758fac2b
Adding CRDB into GHA for the new store (#16021)
The CockroachDB database is slower than PostgreSQL, therefore it will only run branches and nightly builds.

Closes #16020
2022-12-17 08:50:21 +01:00
Pedro Igor
f32e012c11 Make it possible to set a custom user and cache providers when using legacy store
Closes #15008
2022-12-15 16:56:20 +01:00
Pedro Igor
d27a5d5b42
Do not execute test methods before HTTPS listener is not ready (#15984)
Closes #15904
2022-12-14 07:47:43 +01:00
Pedro Igor
0c4ac62a5f Disabling strict https if hostname is diasabled
Closes #15287
2022-12-12 09:10:39 -08:00
Pedro Igor
a861d633e2 Resolving dns names used from tests from local host file
Closes #15904
2022-12-12 02:35:59 -08:00
Pedro Igor
1673906a54 Improving quarkus testsuite execution time
Closes #13544
2022-12-05 15:06:36 +01:00
Sebastian Schuster
3c6e2c3c1e 15234 switch to micrometer metrics 2022-12-05 08:11:35 -03:00
Martin Kanis
5e891951f5 Update Infinispan version to 14.0.2.Final 2022-11-16 14:56:45 +01:00
Peter Zaoral
13fcb9ca34 Unstable CustomJpaUserProviderDistTest on Windows
* remove the starting slash from file URI

Closes #15371

Signed-off-by: Peter Zaoral <pzaoral@redhat.com>
2022-11-14 17:24:03 +01:00
stianst
1de9c201c6 Refactor Profile
Closes #15206
2022-11-07 07:28:11 -03:00
Stian Thorgersen
97ae90de88
Remove Red Hat Single Sign-On product profile from upstream (#14697)
* Remove Red Hat Single Sign-On product profile from upstream

Closes #14916

* review suggestions: Remove Red Hat Single Sign-On product profile from upstream

Closes #14916

Co-authored-by: Peter Skopek <pskopek@redhat.com>
2022-10-18 14:43:04 +02:00
Martin Kanis
761929d174
Merge ActionTokenStoreProvider and SingleUseObjectProvider (#13677)
Closes #13334
2022-10-13 09:26:44 +02:00
Stian Thorgersen
fda26385ec
Add profile feature for hosting keycloak.js on the server (#14771)
* Add profile feature for hosting keycloak.js on the server

Closes #14770

* Updated txt files for HelpCommandTest
2022-10-10 08:00:50 +02:00
Pedro Igor
cff5cfb6df Avoid including user managed entities into the default PU
Closes #12442
2022-09-23 18:01:43 +02:00
Pedro Igor
00e4c3567a Make it possible to switch between BC and BC-FIPS libraries
Closes #12424
2022-09-23 07:50:02 -03:00
Pedro Igor
54c1f1b85a Upgrade Quarkus 2.12.2
Closes #14408
2022-09-14 15:36:50 -03:00
Thomas Darimont
962a685b7b KEYCLOAK-15773 Control availability of admin api and admin-console via feature flags
Inline profile checks for enabled admin-console to avoid issues during
static initialization with quarkus.

Potentially Re-enable admin-api feature if admin-console is enabled
via the admin/admin2 feature flag.

Add legacy admin console as deprecated feature flag
Throw exception if admin-api feature is disabled but admin-console is enabled

Adapt ProfileTest

Consider adminConsoleEnabled flag in QuarkusWelcomeResource
Fix check for Admin-Console / Admin-API feature dependency.

Add new features to approved help output files

Co-authored-by: Stian Thorgersen <stian@redhat.com>
Signed-off-by: Thomas Darimont <thomas.darimont@googlemail.com>
2022-09-09 18:18:51 -03:00
Pedro Igor
ced18f2722 Requests to health endpoint still dispatched to worker threads when http-relative-path is set
Closes #14011
2022-08-31 12:42:41 +02:00
Pedro Igor
127569ed2f
Upgrade to Quarkus 2.12.0.Final (#14006)
Closes #14003
2022-08-30 16:48:20 +02:00
Pedro Igor
52aad0bbdc Allow setting a URL to configure frontend and admin URLs
Closes #13524

Co-authored-by: Stian Thorgersen <stianst@gmail.com>
2022-08-25 23:03:09 -03:00
Pedro Igor
2b9a0bff51
Do not run build when executing import and export commands (#13942)
Closes #13940
2022-08-25 13:43:18 +02:00
Michal Hajas
05b9e6d59e
Upgrade Infinispan to 13.0.10.Final (#13910)
Closes #12306
2022-08-25 13:09:34 +02:00