2804 Commits

Author SHA1 Message Date
Pedro Ruivo
b35dd72392
User session deleted events for invalid sessions
Closes #44513

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Co-authored-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
2025-11-28 15:43:59 +00:00
Pedro Ruivo
3ed15e740a
Add new option to schedule user session expiration
Closes #44068

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
Signed-off-by: Ryan Emerson <remerson@ibm.com>
Co-authored-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Co-authored-by: Alexander Schwartz <alexander.schwartz@ibm.com>
Co-authored-by: Ryan Emerson <remerson@ibm.com>
2025-11-27 23:01:32 +01:00
Alexis Rico
b0b38176f0
Manage Organization Invites
Closes #38809

Signed-off-by: Alexis Rico <sferadev@gmail.com>
Signed-off-by: Pedro Igor <pigor.craveiro@gmail.com>
Co-authored-by: Pedro Igor <pigor.craveiro@gmail.com>
2025-11-27 10:28:52 +01:00
Pedro Igor
96aea99d6c
Make sure LDAP sync runs in a single cluster node and respecting the configured period
Closes #43752

Signed-off-by: Pedro Igor <pigor.craveiro@gmail.com>
Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
Co-authored-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2025-11-27 08:08:20 +01:00
vramik
7167262909 Add PK creation for databasechangelog in MySQL to keycloak-database-update.sql when manual migration is used.
Closes #44349

Signed-off-by: vramik <vramik@redhat.com>
2025-11-26 17:06:36 -03:00
Alexander Schwartz
37f2488441
When joining a group, don't rely on cached values if user has already been updated
Closes #44480

Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2025-11-26 10:52:14 +01:00
Pedro Ruivo
f7ee930a27
Remove remote call when handling events)
Closes #44048

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
Co-authored-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Co-authored-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2025-11-24 18:45:00 +00:00
vramik
0825f22331 Add toPredicate implementation for conditions
Closes #42696

Signed-off-by: vramik <vramik@redhat.com>
2025-11-24 08:56:36 -03:00
Alexander Schwartz
bb971dc6fc
Efficient row-count on PostgreSQL
Closes #44057

Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2025-11-21 12:28:09 +01:00
Pedro Ruivo
13ef89664c
More accurate user session expiration logic
Closes #44204

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Co-authored-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
2025-11-19 21:06:17 +01:00
Giuseppe Graziano
3e8b2f8ab7
New JWT Authorization Grant Identity provider (#44176)
Closes #43570

Signed-off-by: Giuseppe Graziano <g.graziano94@gmail.com>
2025-11-19 09:18:23 +01:00
Pedro Ruivo
febb632e17
Update protolock file list
Closes #44300

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Co-authored-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
2025-11-18 18:01:12 +00:00
Stefan Guilhen
464d1a6741 Improve updating existing workflows
- allow updating entire workflow when no scheduled tasks exist
- allow updating conditions, concurrency, and steps config when scheduled tasks exists

Closes #42618

Signed-off-by: Stefan Guilhen <sguilhen@redhat.com>
2025-11-17 09:10:29 -03:00
Pedro Ruivo
6260622f2e
Find highest sequence number in jgroups_ping
* Find the highest sequence number in jgroups_ping table to avoid duplicates

Fixes #44189

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Co-authored-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
2025-11-14 20:54:52 +01:00
Pedro Ruivo
8d0b64bd59
Deprecate TopologyInfo
Closes #44047

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Co-authored-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
2025-11-14 20:50:31 +01:00
Lucas
5ad1b1efa4
Fix logger call to align arguments with format pattern
fixes #44229

Signed-off-by: Lucas <lucas.bickel@adfinis.com>
2025-11-14 15:23:19 +00:00
Pedro Ruivo
70e1dba2c3
Create remember_me column for user sessions
Closes #44112

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Co-authored-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
2025-11-14 14:41:04 +01:00
Stian Thorgersen
a2c1055f8d
Proposed import order (#43432)
* Add importOrder to Spotless

Closes #43235

Signed-off-by: stianst <stianst@gmail.com>

* Re-order imports with Spotless

Signed-off-by: stianst <stianst@gmail.com>

---------

Signed-off-by: stianst <stianst@gmail.com>
2025-11-14 09:34:49 +01:00
Vlasta Ramik
d2697232b9
Rename bind endpoint to activate
Closes #44155

Signed-off-by: vramik <vramik@redhat.com>
2025-11-13 22:15:33 +01:00
Pedro Ruivo
0876ca9aa1
Use batches to expire entries from Database
Closes #44067

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Co-authored-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
2025-11-13 15:13:15 +00:00
vramik
748b58bf64 Remove creation of default policy, resource and permission upon enabling authorization for a client
Closes #43867

Signed-off-by: vramik <vramik@redhat.com>
2025-11-13 09:14:56 -03:00
Stefan Guilhen
da7993896d Allow ISO-8601 compatible format for the after field in workflow steps
- aligns the format with what is used in the JPA connection provider pool max lifetime for time-based configurations

Closes #42913

Signed-off-by: Stefan Guilhen <sguilhen@redhat.com>
2025-11-12 18:51:49 -03:00
vramik
84a679224b Add operation to deactivate a workflow execution for a resource
Closes #42124

Signed-off-by: vramik <vramik@redhat.com>
2025-11-12 17:02:17 -03:00
Pedro Ruivo
39964befef
Sessions not removed when user is deleted
Fixes #43323

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Co-authored-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
2025-11-11 14:09:05 +01:00
Martin Kanis
c28cde359c Local user can't login when ldap error
Closes #43639

Signed-off-by: Martin Kanis <mkanis@redhat.com>
2025-11-11 08:48:26 -03:00
Stefan Guilhen
ef3de183df Skip checksum validation for 2.5.0-unicode-oracle, that is preventing migrations when schema name changes
Closes #43564

Signed-off-by: Stefan Guilhen <sguilhen@redhat.com>
2025-11-10 12:56:45 -03:00
Stian Thorgersen
d8275fe5df
Remove wildcard imports (#44060)
Closes #44059

Signed-off-by: stianst <stianst@gmail.com>
2025-11-10 11:46:05 +01:00
Pedro Ruivo
18eeef7b26
Create user session expired event
Closes #43942

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
Co-authored-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Co-authored-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2025-11-07 22:36:47 +00:00
Pedro Ruivo
80895d7fb4
AUTH_SESSION_ID cookie has the incorrect route
Fixes #43933

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Co-authored-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
2025-11-07 21:32:45 +00:00
Pedro Igor
33f1dda2cf Processing workflow events asynchronously - Part 1
Closes #42386

Signed-off-by: Pedro Igor <pigor.craveiro@gmail.com>
2025-11-07 10:57:05 -03:00
Stian Thorgersen
b278dbbb3d
Allow identity provider configuration without defaults for user authentication (#43963)
Closes #43552

Signed-off-by: stianst <stianst@gmail.com>
2025-11-05 10:13:40 -03:00
Alexander Schwartz
3ef8c565f3
Avoid touching the database layer if no changes are necessary for a user
Closes #43682

Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2025-11-05 06:44:48 -03:00
Tobi
479859a7a3
Add new indices on offline_client_session
Closes #43566

Signed-off-by: twobiers <22715034+twobiers@users.noreply.github.com>
Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
Co-authored-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2025-10-31 17:49:47 +01:00
Stian Thorgersen
1048c8d9c9
Filter out non-user authentication IdPs from account and login (#43798)
Closes #43553

Signed-off-by: stianst <stianst@gmail.com>
2025-10-31 12:40:04 +01:00
Pedro Ruivo
e40c5de050
Session cache affinity
Closes #42776

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Signed-off-by: Alexander Schwartz <alexander.schwartz@gmx.net>
Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
Co-authored-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Co-authored-by: Alexander Schwartz <alexander.schwartz@gmx.net>
Co-authored-by: Steven Hawkins <shawkins@redhat.com>
Co-authored-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2025-10-30 21:01:09 +00:00
Tomáš Kyjovský
4c64b7189c
Deprecate org.keycloak.common.util.Base64
Closes #43370

Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
Signed-off-by: 1867605+tkyjovsk@users.noreply.github.com
Co-authored-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Co-authored-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2025-10-30 09:12:14 +01:00
Marek Posolda
2fc5419676
Avoid using UserCredentialManager from user storage extensions (#43695)
closes #43694

Signed-off-by: mposolda <mposolda@gmail.com>
2025-10-29 16:26:59 +01:00
Pedro Igor
ce5dd51921 Migration step to add the reset-password scope to user resource type resources
Closes #43736

Signed-off-by: Pedro Igor <pigor.craveiro@gmail.com>
2025-10-29 08:49:51 -03:00
Alexander Schwartz
2b51d6f4ac
Avoid holding on to the realm in cached configurations
Closes #43744

Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2025-10-28 13:10:24 -03:00
Alexander Schwartz
ba0fe9bd70
Cleaning up threadlocals to prevent (small) memory leak
Closes #43759

Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2025-10-28 10:36:27 -03:00
Stefan Guilhen
3751bc050d Workflows enhancements
- Allow specifying a parameter in events to better tie workflows to more specific events (e.g. user-role-added(name-of-role))
 - Make workflows 'if' and 'on' fields use expressions by default
 - Fix condition evaluation inconsistencies by having a single param for each condition
 - Remove need to use double quotes for condition parameters
 - Reference groups by path instead of id in conditions

Closes #43137
Closes #43536
Closes #43537
Closes #43661
Closes #43715

Signed-off-by: Stefan Guilhen <sguilhen@redhat.com>
2025-10-27 07:20:59 -03:00
Pedro Igor
6527b139dc
Do not lower-case username and email if users are not imported from LDAP
Closes #43621

Signed-off-by: Pedro Igor <pigor.craveiro@gmail.com>
2025-10-23 13:02:33 +02:00
vramik
4dc398354a Restart workflow basen on concurrency/cancel-if-running option rather than reset-on option
Closes #42911

Signed-off-by: vramik <vramik@redhat.com>
2025-10-17 10:06:43 -03:00
Alexander Schwartz
02dfb4bd8a
Remove extra flush events to increase performance
Closes #43362

Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2025-10-15 12:39:49 +02:00
Pedro Ruivo
468c063e27
Client session may be lost during session restart
Fixes #43349

Signed-off-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
Co-authored-by: Pedro Ruivo <1492066+pruivo@users.noreply.github.com>
Co-authored-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2025-10-14 11:01:16 +00:00
Pedro Igor
fa581c8148 Allow passing a context to steps
Signed-off-by: Pedro Igor <pigor.craveiro@gmail.com>
2025-10-13 09:53:30 -03:00
Pedro Igor
5b5a83b800 Moving WorkflowsManager and WorkflowStateSpi to server-spi-private module
Signed-off-by: Pedro Igor <pigor.craveiro@gmail.com>
2025-10-13 09:53:30 -03:00
stianst
aedd7fe5db Remove unused imports as part of #43233
Signed-off-by: stianst <stianst@gmail.com>
2025-10-13 13:32:01 +02:00
Alexander Schwartz
10f06e9eb7
JDBC_PING publishes its physical address on startup
Closes #43357

Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2025-10-13 09:53:30 +01:00
Alexander Schwartz
66b9e801c1
Mark the reading of admin and user events read-only
This should decrease the memory usage and improve response times

Closes #43365

Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2025-10-13 09:46:38 +02:00