Skip to content

[9.3] [Security Solution] Installation review pagination: Backend (#247375)#249181

Merged
kibanamachine merged 4 commits intoelastic:9.3from
kibanamachine:backport/9.3/pr-247375
Jan 19, 2026
Merged

[9.3] [Security Solution] Installation review pagination: Backend (#247375)#249181
kibanamachine merged 4 commits intoelastic:9.3from
kibanamachine:backport/9.3/pr-247375

Conversation

@kibanamachine
Copy link
Copy Markdown
Contributor

Backport

This will backport the following commits from main to 9.3:

Questions ?

Please refer to the Backport tool documentation

@nikitaindik nikitaindik force-pushed the backport/9.3/pr-247375 branch from 8899c37 to a16fdd0 Compare January 17, 2026 12:59
nikitaindik and others added 4 commits January 19, 2026 11:45
…247375)

**Partially addresses: elastic#241656**

> **Note:** In this PR the endpoint is paginated, but `page` and
`per_page` parameters are optional. If no pagination parameters are
provided, it will return all rules at once (same as previous behavior).
We want to release this PR first and then we'll make the pagination
parameters required in a follow-up PR.

## Summary

This PR adds pagination, sorting and filtering functionality to the
prebuilt rules installation review endpoint
(`internal/prebuilt_rules/installation/_review`) in accordance with the
[API design
proposal](https://docs.google.com/document/d/1AYlt8wJMoLD-V_owAd4qL-h76IOVnfDCZ77VNmmf-Ks/edit?usp=sharing)
(internal).

No changes to the front end in this PR. I will make frontend use
backend-side pagination, sorting and filtering in a follow-up PR.

## Changes
- Implemented pagination, sorting and filtering of prebuilt rules.
`page` and `per_page` parameters are optional. If these parameters are
not provided, endpoint will return all rules at once (same as previous
behaviour).
- Added mappings for more fields of `security-rule` SO: `name`, `tags`,
`severity`, `risk_score`
- Split Prebuilt Rule Assets client into multiple files, because it
became to large
- Updated existing Prebuilt Rule Assets client methods to use
`savedObjectsClient.search` instead of `savedObjectsClient.find`. This
allows to use the "terms" aggregation to fetch needed rules without
having to work around the "max boolean clauses count reached" issue.
- Covered the changes with integration tests according to the recently
merged test plan ([PR](elastic#244804))
- Added a couple of new scenarios to test plans based on
[suggestions](elastic#244804 (comment))
from @pborgonovi

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Jean-Louis Leysens <jloleysens@gmail.com>
Co-authored-by: Gerard Soldevila <gerard.soldevila@elastic.co>
(cherry picked from commit e1d9b59)
**Related comment in previous PR:
https://github.com/elastic/kibana/pull/247375/files#r2691131621**

## Summary
Recently I've merged a PR with a mistake – the shape of the `filter`
parameter is incorrect: the `values` property was missing. This PR fixes
the shape and updates tests accordingly.

We need to merge this before the Serverless release on Monday,
19-Jan-2026.

This PR is for `main`. I will also backport these changes to the `9.3`,
`9.2` and `8.19` branches by adding the change in separate PRs.
@nikitaindik nikitaindik force-pushed the backport/9.3/pr-247375 branch from 0f8a62e to 7e35403 Compare January 19, 2026 10:46
@elasticmachine
Copy link
Copy Markdown
Contributor

elasticmachine commented Jan 19, 2026

⏳ Build in-progress, with failures

Failed CI Steps

Test Failures

  • [job] [logs] FTR Configs #35 / Entity Analytics - Privilege Monitoring @ess @serverless @skipInServerlessMKI Entity Privilege Monitoring Engine Plain Index Sync Plain index sync should not create duplicate users

History

cc @nikitaindik

@kibanamachine kibanamachine merged commit ffbd5db into elastic:9.3 Jan 19, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport This PR is a backport of another PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants