Skip to content

[Security Solution] Avoid showing rules update confirmation modal on basic license#214340

Merged
maximpn merged 1 commit intoelastic:mainfrom
maximpn:avoid-showing-rules-update-modal-on-basic-license
Mar 13, 2025
Merged

[Security Solution] Avoid showing rules update confirmation modal on basic license#214340
maximpn merged 1 commit intoelastic:mainfrom
maximpn:avoid-showing-rules-update-modal-on-basic-license

Conversation

@maximpn
Copy link
Contributor

@maximpn maximpn commented Mar 13, 2025

Resolves: #214302

Summary

This PR prevents showing rule upgrade confirmation modal on lower licenses where prebuilt rules customization is not allowed.

Details

Users may see a rules upgrade confirmation modal when trying to upgrade prebuilt rules even if prebuilt rules customization is disabled due to insufficient license. It happens due to improper response from upgrade/_perform which doesn't respect pick_version. It's expected rule upgrade goes smoothly when pick_version is one of BASE, CURRENT or TARGET.

The fix makes sure dry run request isn't fired and a prebuilt rules upgrade confirmation modal isn't shown when running with insufficient for prebuilt rules customization license.

There is a ticket to address this issue in the API endpoint.

@maximpn maximpn added bug Fixes for quality problems that affect the customer experience release_note:skip Skip the PR/issue when compiling release notes impact:high Addressing this issue will have a high level of impact on the quality/strength of our product. v9.0.0 Team:Detections and Resp Security Detection Response Team Team: SecuritySolution Security Solutions Team working on SIEM, Endpoint, Timeline, Resolver, etc. Team:Detection Rule Management Security Detection Rule Management Team Feature:Prebuilt Detection Rules Security Solution Prebuilt Detection Rules area backport:version Backport to applied version labels v8.18.0 v9.1.0 v8.19.0 labels Mar 13, 2025
@maximpn maximpn self-assigned this Mar 13, 2025
@maximpn maximpn marked this pull request as ready for review March 13, 2025 10:42
@maximpn maximpn requested a review from a team as a code owner March 13, 2025 10:42
@maximpn maximpn requested a review from nikitaindik March 13, 2025 10:42
@elasticmachine
Copy link
Contributor

Pinging @elastic/security-detections-response (Team:Detections and Resp)

@elasticmachine
Copy link
Contributor

Pinging @elastic/security-solution (Team: SecuritySolution)

@elasticmachine
Copy link
Contributor

Pinging @elastic/security-detection-rule-management (Team:Detection Rule Management)

Copy link
Contributor

@nikitaindik nikitaindik left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR, @maximpn! I have reviewed and tested it locally.

I confirmed that the modal doesn’t appear on Basic, so it doesn’t interfere with the "Upgrade all" flow.

One edge case I noticed is when a user has ML rules — such as leftovers from a previous Trial or Enterprise license. In this case, these rules aren’t upgraded, and the user only sees a generic message that doesn’t explain why some rules weren’t upgraded. We might want to improve this in the future.

Scherm­afbeelding 2025-03-13 om 12 47 05

Without ML rules all rules can be upgraded.

Scherm­afbeelding 2025-03-13 om 12 46 43

@elasticmachine
Copy link
Contributor

💛 Build succeeded, but was flaky

Failed CI Steps

Metrics [docs]

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
securitySolution 8.9MB 8.9MB +52.0B

cc @maximpn

@maximpn maximpn merged commit d782b71 into elastic:main Mar 13, 2025
34 checks passed
@maximpn maximpn deleted the avoid-showing-rules-update-modal-on-basic-license branch March 13, 2025 13:47
@kibanamachine
Copy link
Contributor

Starting backport for target branches: 8.18, 8.x, 9.0

https://github.com/elastic/kibana/actions/runs/13836193490

kibanamachine pushed a commit to kibanamachine/kibana that referenced this pull request Mar 13, 2025
…basic license (elastic#214340)

**Resolves:** elastic#214302

## Summary

This PR prevents showing rule upgrade confirmation modal on lower licenses where prebuilt rules customization is not allowed.

## Details

Users may see a rules upgrade confirmation modal when trying to upgrade prebuilt rules even if prebuilt rules customization is disabled due to insufficient license. It happens due to improper response from `upgrade/_perform` which doesn't respect `pick_version`. It's expected rule upgrade goes smoothly when `pick_version` is one of `BASE`, `CURRENT` or `TARGET`.

The fix makes sure dry run request isn't fired and a prebuilt rules upgrade confirmation modal isn't shown when running with insufficient for prebuilt rules customization license.

There is a [ticket](elastic#214338) to address this issue in the API endpoint.

(cherry picked from commit d782b71)
kibanamachine pushed a commit to kibanamachine/kibana that referenced this pull request Mar 13, 2025
…basic license (elastic#214340)

**Resolves:** elastic#214302

## Summary

This PR prevents showing rule upgrade confirmation modal on lower licenses where prebuilt rules customization is not allowed.

## Details

Users may see a rules upgrade confirmation modal when trying to upgrade prebuilt rules even if prebuilt rules customization is disabled due to insufficient license. It happens due to improper response from `upgrade/_perform` which doesn't respect `pick_version`. It's expected rule upgrade goes smoothly when `pick_version` is one of `BASE`, `CURRENT` or `TARGET`.

The fix makes sure dry run request isn't fired and a prebuilt rules upgrade confirmation modal isn't shown when running with insufficient for prebuilt rules customization license.

There is a [ticket](elastic#214338) to address this issue in the API endpoint.

(cherry picked from commit d782b71)
kibanamachine pushed a commit to kibanamachine/kibana that referenced this pull request Mar 13, 2025
…basic license (elastic#214340)

**Resolves:** elastic#214302

## Summary

This PR prevents showing rule upgrade confirmation modal on lower licenses where prebuilt rules customization is not allowed.

## Details

Users may see a rules upgrade confirmation modal when trying to upgrade prebuilt rules even if prebuilt rules customization is disabled due to insufficient license. It happens due to improper response from `upgrade/_perform` which doesn't respect `pick_version`. It's expected rule upgrade goes smoothly when `pick_version` is one of `BASE`, `CURRENT` or `TARGET`.

The fix makes sure dry run request isn't fired and a prebuilt rules upgrade confirmation modal isn't shown when running with insufficient for prebuilt rules customization license.

There is a [ticket](elastic#214338) to address this issue in the API endpoint.

(cherry picked from commit d782b71)
@kibanamachine
Copy link
Contributor

💚 All backports created successfully

Status Branch Result
8.18
8.x
9.0

Note: Successful backport PRs will be merged automatically after passing CI.

Questions ?

Please refer to the Backport tool documentation

kibanamachine added a commit that referenced this pull request Mar 13, 2025
…dal on basic license (#214340) (#214383)

# Backport

This will backport the following commits from `main` to `8.18`:
- [[Security Solution] Avoid showing rules update confirmation modal on
basic license (#214340)](#214340)

<!--- Backport version: 9.6.6 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)

<!--BACKPORT [{"author":{"name":"Maxim
Palenov","email":"maxim.palenov@elastic.co"},"sourceCommit":{"committedDate":"2025-03-13T13:47:30Z","message":"[Security
Solution] Avoid showing rules update confirmation modal on basic license
(#214340)\n\n**Resolves:**
https://github.com/elastic/kibana/issues/214302\n\n## Summary\n\nThis PR
prevents showing rule upgrade confirmation modal on lower licenses where
prebuilt rules customization is not allowed.\n\n## Details\n\nUsers may
see a rules upgrade confirmation modal when trying to upgrade prebuilt
rules even if prebuilt rules customization is disabled due to
insufficient license. It happens due to improper response from
`upgrade/_perform` which doesn't respect `pick_version`. It's expected
rule upgrade goes smoothly when `pick_version` is one of `BASE`,
`CURRENT` or `TARGET`.\n\nThe fix makes sure dry run request isn't fired
and a prebuilt rules upgrade confirmation modal isn't shown when running
with insufficient for prebuilt rules customization license.\n\nThere is
a [ticket](#214338) to address
this issue in the API
endpoint.","sha":"d782b7163785acd3e1bd26a70c9a93454611b9c4","branchLabelMapping":{"^v9.1.0$":"main","^v8.19.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["bug","release_note:skip","impact:high","v9.0.0","Team:Detections
and Resp","Team: SecuritySolution","Team:Detection Rule
Management","Feature:Prebuilt Detection
Rules","backport:version","v8.18.0","v9.1.0","v8.19.0"],"title":"[Security
Solution] Avoid showing rules update confirmation modal on basic
license","number":214340,"url":"https://github.com/elastic/kibana/pull/214340","mergeCommit":{"message":"[Security
Solution] Avoid showing rules update confirmation modal on basic license
(#214340)\n\n**Resolves:**
https://github.com/elastic/kibana/issues/214302\n\n## Summary\n\nThis PR
prevents showing rule upgrade confirmation modal on lower licenses where
prebuilt rules customization is not allowed.\n\n## Details\n\nUsers may
see a rules upgrade confirmation modal when trying to upgrade prebuilt
rules even if prebuilt rules customization is disabled due to
insufficient license. It happens due to improper response from
`upgrade/_perform` which doesn't respect `pick_version`. It's expected
rule upgrade goes smoothly when `pick_version` is one of `BASE`,
`CURRENT` or `TARGET`.\n\nThe fix makes sure dry run request isn't fired
and a prebuilt rules upgrade confirmation modal isn't shown when running
with insufficient for prebuilt rules customization license.\n\nThere is
a [ticket](#214338) to address
this issue in the API
endpoint.","sha":"d782b7163785acd3e1bd26a70c9a93454611b9c4"}},"sourceBranch":"main","suggestedTargetBranches":["9.0","8.18","8.x"],"targetPullRequestStates":[{"branch":"9.0","label":"v9.0.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"8.18","label":"v8.18.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/214340","number":214340,"mergeCommit":{"message":"[Security
Solution] Avoid showing rules update confirmation modal on basic license
(#214340)\n\n**Resolves:**
https://github.com/elastic/kibana/issues/214302\n\n## Summary\n\nThis PR
prevents showing rule upgrade confirmation modal on lower licenses where
prebuilt rules customization is not allowed.\n\n## Details\n\nUsers may
see a rules upgrade confirmation modal when trying to upgrade prebuilt
rules even if prebuilt rules customization is disabled due to
insufficient license. It happens due to improper response from
`upgrade/_perform` which doesn't respect `pick_version`. It's expected
rule upgrade goes smoothly when `pick_version` is one of `BASE`,
`CURRENT` or `TARGET`.\n\nThe fix makes sure dry run request isn't fired
and a prebuilt rules upgrade confirmation modal isn't shown when running
with insufficient for prebuilt rules customization license.\n\nThere is
a [ticket](#214338) to address
this issue in the API
endpoint.","sha":"d782b7163785acd3e1bd26a70c9a93454611b9c4"}},{"branch":"8.x","label":"v8.19.0","branchLabelMappingKey":"^v8.19.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Maxim Palenov <maxim.palenov@elastic.co>
kibanamachine added a commit that referenced this pull request Mar 13, 2025
…al on basic license (#214340) (#214384)

# Backport

This will backport the following commits from `main` to `8.x`:
- [[Security Solution] Avoid showing rules update confirmation modal on
basic license (#214340)](#214340)

<!--- Backport version: 9.6.6 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)

<!--BACKPORT [{"author":{"name":"Maxim
Palenov","email":"maxim.palenov@elastic.co"},"sourceCommit":{"committedDate":"2025-03-13T13:47:30Z","message":"[Security
Solution] Avoid showing rules update confirmation modal on basic license
(#214340)\n\n**Resolves:**
https://github.com/elastic/kibana/issues/214302\n\n## Summary\n\nThis PR
prevents showing rule upgrade confirmation modal on lower licenses where
prebuilt rules customization is not allowed.\n\n## Details\n\nUsers may
see a rules upgrade confirmation modal when trying to upgrade prebuilt
rules even if prebuilt rules customization is disabled due to
insufficient license. It happens due to improper response from
`upgrade/_perform` which doesn't respect `pick_version`. It's expected
rule upgrade goes smoothly when `pick_version` is one of `BASE`,
`CURRENT` or `TARGET`.\n\nThe fix makes sure dry run request isn't fired
and a prebuilt rules upgrade confirmation modal isn't shown when running
with insufficient for prebuilt rules customization license.\n\nThere is
a [ticket](#214338) to address
this issue in the API
endpoint.","sha":"d782b7163785acd3e1bd26a70c9a93454611b9c4","branchLabelMapping":{"^v9.1.0$":"main","^v8.19.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["bug","release_note:skip","impact:high","v9.0.0","Team:Detections
and Resp","Team: SecuritySolution","Team:Detection Rule
Management","Feature:Prebuilt Detection
Rules","backport:version","v8.18.0","v9.1.0","v8.19.0"],"title":"[Security
Solution] Avoid showing rules update confirmation modal on basic
license","number":214340,"url":"https://github.com/elastic/kibana/pull/214340","mergeCommit":{"message":"[Security
Solution] Avoid showing rules update confirmation modal on basic license
(#214340)\n\n**Resolves:**
https://github.com/elastic/kibana/issues/214302\n\n## Summary\n\nThis PR
prevents showing rule upgrade confirmation modal on lower licenses where
prebuilt rules customization is not allowed.\n\n## Details\n\nUsers may
see a rules upgrade confirmation modal when trying to upgrade prebuilt
rules even if prebuilt rules customization is disabled due to
insufficient license. It happens due to improper response from
`upgrade/_perform` which doesn't respect `pick_version`. It's expected
rule upgrade goes smoothly when `pick_version` is one of `BASE`,
`CURRENT` or `TARGET`.\n\nThe fix makes sure dry run request isn't fired
and a prebuilt rules upgrade confirmation modal isn't shown when running
with insufficient for prebuilt rules customization license.\n\nThere is
a [ticket](#214338) to address
this issue in the API
endpoint.","sha":"d782b7163785acd3e1bd26a70c9a93454611b9c4"}},"sourceBranch":"main","suggestedTargetBranches":["9.0","8.18","8.x"],"targetPullRequestStates":[{"branch":"9.0","label":"v9.0.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"8.18","label":"v8.18.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/214340","number":214340,"mergeCommit":{"message":"[Security
Solution] Avoid showing rules update confirmation modal on basic license
(#214340)\n\n**Resolves:**
https://github.com/elastic/kibana/issues/214302\n\n## Summary\n\nThis PR
prevents showing rule upgrade confirmation modal on lower licenses where
prebuilt rules customization is not allowed.\n\n## Details\n\nUsers may
see a rules upgrade confirmation modal when trying to upgrade prebuilt
rules even if prebuilt rules customization is disabled due to
insufficient license. It happens due to improper response from
`upgrade/_perform` which doesn't respect `pick_version`. It's expected
rule upgrade goes smoothly when `pick_version` is one of `BASE`,
`CURRENT` or `TARGET`.\n\nThe fix makes sure dry run request isn't fired
and a prebuilt rules upgrade confirmation modal isn't shown when running
with insufficient for prebuilt rules customization license.\n\nThere is
a [ticket](#214338) to address
this issue in the API
endpoint.","sha":"d782b7163785acd3e1bd26a70c9a93454611b9c4"}},{"branch":"8.x","label":"v8.19.0","branchLabelMappingKey":"^v8.19.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Maxim Palenov <maxim.palenov@elastic.co>
kibanamachine added a commit that referenced this pull request Mar 13, 2025
…al on basic license (#214340) (#214385)

# Backport

This will backport the following commits from `main` to `9.0`:
- [[Security Solution] Avoid showing rules update confirmation modal on
basic license (#214340)](#214340)

<!--- Backport version: 9.6.6 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)

<!--BACKPORT [{"author":{"name":"Maxim
Palenov","email":"maxim.palenov@elastic.co"},"sourceCommit":{"committedDate":"2025-03-13T13:47:30Z","message":"[Security
Solution] Avoid showing rules update confirmation modal on basic license
(#214340)\n\n**Resolves:**
https://github.com/elastic/kibana/issues/214302\n\n## Summary\n\nThis PR
prevents showing rule upgrade confirmation modal on lower licenses where
prebuilt rules customization is not allowed.\n\n## Details\n\nUsers may
see a rules upgrade confirmation modal when trying to upgrade prebuilt
rules even if prebuilt rules customization is disabled due to
insufficient license. It happens due to improper response from
`upgrade/_perform` which doesn't respect `pick_version`. It's expected
rule upgrade goes smoothly when `pick_version` is one of `BASE`,
`CURRENT` or `TARGET`.\n\nThe fix makes sure dry run request isn't fired
and a prebuilt rules upgrade confirmation modal isn't shown when running
with insufficient for prebuilt rules customization license.\n\nThere is
a [ticket](#214338) to address
this issue in the API
endpoint.","sha":"d782b7163785acd3e1bd26a70c9a93454611b9c4","branchLabelMapping":{"^v9.1.0$":"main","^v8.19.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["bug","release_note:skip","impact:high","v9.0.0","Team:Detections
and Resp","Team: SecuritySolution","Team:Detection Rule
Management","Feature:Prebuilt Detection
Rules","backport:version","v8.18.0","v9.1.0","v8.19.0"],"title":"[Security
Solution] Avoid showing rules update confirmation modal on basic
license","number":214340,"url":"https://github.com/elastic/kibana/pull/214340","mergeCommit":{"message":"[Security
Solution] Avoid showing rules update confirmation modal on basic license
(#214340)\n\n**Resolves:**
https://github.com/elastic/kibana/issues/214302\n\n## Summary\n\nThis PR
prevents showing rule upgrade confirmation modal on lower licenses where
prebuilt rules customization is not allowed.\n\n## Details\n\nUsers may
see a rules upgrade confirmation modal when trying to upgrade prebuilt
rules even if prebuilt rules customization is disabled due to
insufficient license. It happens due to improper response from
`upgrade/_perform` which doesn't respect `pick_version`. It's expected
rule upgrade goes smoothly when `pick_version` is one of `BASE`,
`CURRENT` or `TARGET`.\n\nThe fix makes sure dry run request isn't fired
and a prebuilt rules upgrade confirmation modal isn't shown when running
with insufficient for prebuilt rules customization license.\n\nThere is
a [ticket](#214338) to address
this issue in the API
endpoint.","sha":"d782b7163785acd3e1bd26a70c9a93454611b9c4"}},"sourceBranch":"main","suggestedTargetBranches":["9.0","8.18","8.x"],"targetPullRequestStates":[{"branch":"9.0","label":"v9.0.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"8.18","label":"v8.18.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/214340","number":214340,"mergeCommit":{"message":"[Security
Solution] Avoid showing rules update confirmation modal on basic license
(#214340)\n\n**Resolves:**
https://github.com/elastic/kibana/issues/214302\n\n## Summary\n\nThis PR
prevents showing rule upgrade confirmation modal on lower licenses where
prebuilt rules customization is not allowed.\n\n## Details\n\nUsers may
see a rules upgrade confirmation modal when trying to upgrade prebuilt
rules even if prebuilt rules customization is disabled due to
insufficient license. It happens due to improper response from
`upgrade/_perform` which doesn't respect `pick_version`. It's expected
rule upgrade goes smoothly when `pick_version` is one of `BASE`,
`CURRENT` or `TARGET`.\n\nThe fix makes sure dry run request isn't fired
and a prebuilt rules upgrade confirmation modal isn't shown when running
with insufficient for prebuilt rules customization license.\n\nThere is
a [ticket](#214338) to address
this issue in the API
endpoint.","sha":"d782b7163785acd3e1bd26a70c9a93454611b9c4"}},{"branch":"8.x","label":"v8.19.0","branchLabelMappingKey":"^v8.19.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Maxim Palenov <maxim.palenov@elastic.co>
CAWilson94 pushed a commit to CAWilson94/kibana that referenced this pull request Mar 22, 2025
…basic license (elastic#214340)

**Resolves:** elastic#214302

## Summary

This PR prevents showing rule upgrade confirmation modal on lower licenses where prebuilt rules customization is not allowed.

## Details

Users may see a rules upgrade confirmation modal when trying to upgrade prebuilt rules even if prebuilt rules customization is disabled due to insufficient license. It happens due to improper response from `upgrade/_perform` which doesn't respect `pick_version`. It's expected rule upgrade goes smoothly when `pick_version` is one of `BASE`, `CURRENT` or `TARGET`.

The fix makes sure dry run request isn't fired and a prebuilt rules upgrade confirmation modal isn't shown when running with insufficient for prebuilt rules customization license.

There is a [ticket](elastic#214338) to address this issue in the API endpoint.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport:version Backport to applied version labels bug Fixes for quality problems that affect the customer experience Feature:Prebuilt Detection Rules Security Solution Prebuilt Detection Rules area impact:high Addressing this issue will have a high level of impact on the quality/strength of our product. release_note:skip Skip the PR/issue when compiling release notes Team:Detection Rule Management Security Detection Rule Management Team Team:Detections and Resp Security Detection Response Team Team: SecuritySolution Security Solutions Team working on SIEM, Endpoint, Timeline, Resolver, etc. v8.18.0 v8.19.0 v9.0.0 v9.1.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants