mirror of
https://github.com/keycloak/keycloak.git
synced 2025-12-16 20:15:46 -06:00
Workflow database queries not filtering based on the realm
Closes #44858 Signed-off-by: Pedro Igor <pigor.craveiro@gmail.com>
This commit is contained in:
@@ -31,6 +31,7 @@ import jakarta.persistence.criteria.Subquery;
|
||||
import org.keycloak.common.util.MultivaluedHashMap;
|
||||
import org.keycloak.connections.jpa.JpaConnectionProvider;
|
||||
import org.keycloak.models.KeycloakSession;
|
||||
import org.keycloak.models.RealmModel;
|
||||
import org.keycloak.models.jpa.entities.UserEntity;
|
||||
import org.keycloak.models.workflow.conditions.expression.BooleanConditionParser;
|
||||
import org.keycloak.models.workflow.conditions.expression.EvaluatorUtils;
|
||||
@@ -67,6 +68,8 @@ public class UserResourceTypeWorkflowProvider implements ResourceTypeSelector {
|
||||
cb.equal(stateRoot.get("workflowId"), workflow.getId())
|
||||
)
|
||||
);
|
||||
RealmModel realm = session.getContext().getRealm();
|
||||
predicates.add(cb.equal(userRoot.get("realmId"), realm.getId()));
|
||||
Predicate notExistsPredicate = cb.not(cb.exists(subquery));
|
||||
predicates.add(notExistsPredicate);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user