-
Notifications
You must be signed in to change notification settings - Fork 8.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Cases] Cases assignees sub feature #201654
[Cases] Cases assignees sub feature #201654
Conversation
Pinging @elastic/response-ops (Team:ResponseOps) |
Pinging @elastic/security-threat-hunting-investigations (Team:Threat Hunting:Investigations) |
@kc13greiner updated |
...plugins/shared/features/server/feature_privilege_iterator/feature_privilege_iterator.test.ts
Outdated
Show resolved
Hide resolved
user: obsCasesOnlyDeleteUser, | ||
owner: OBSERVABILITY_APP_ID, | ||
userWithFullPerms: obsCasesAllUser, | ||
}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: I think V3 variants of users: casesNoDelete
, obsCasesNoDelete
, and secAllCasesNoDelete
(the names are sort of misleading, the have the minimal_all
privilege) should be added here.
{ user: obsCasesV2AllUser, owner: OBSERVABILITY_APP_ID }, | ||
{ user: secCasesV3AllUser, owner: SECURITY_SOLUTION_APP_ID }, | ||
{ user: casesV3AllUser, owner: CASES_APP_ID }, | ||
{ user: obsCasesV3AllUser, owner: OBSERVABILITY_APP_ID }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: I think V1 and V2 variants of users: casesNoDelete, obsCasesNoDelete, and secAllCasesNoDelete (the names are sort of misleading, the have the minimal_all privilege) should be added here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
that I agree with, I think I was just trying to avoid a permutation explosion in these test names, this is quickly going to become untenable how it currently works, i.e. secCasesV3MinAllWithSettingsWithoutCommentWithReopenWithoutDeleteWithAssign ha
@kqualters-elastic I found the tests I was looking for 👍 I added a few suggestions to help cover the minimal_all Changes to the the V1/2/3 of all types LGTM. Thank you for making all those changes! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Left a few suggestions above for improved test coverage of minimal_all
Overall LGTM - great work!
@elasticmachine merge upstream |
💚 Build Succeeded
Metrics [docs]Public APIs missing comments
Async chunks
Page load bundle
Unknown metric groupsAPI count
ESLint disabled line counts
References to deprecated APIs
Total ESLint disabled count
History
|
Starting backport for target branches: 8.x |
💔 All backports failed
Manual backportTo create the backport manually run:
Questions ?Please refer to the Backport tool documentation |
Friendly reminder: Looks like this PR hasn’t been backported yet. |
I just updated the labels on this PR. It didn't merge before the 9.0/8.18 feature freeze, and the backport to 8.x failed. Right now, this change will only be included in 9.1. I'm assuming that we'll be fixing the backport, so I added the 8.19 label. |
💚 All backports created successfully
Note: Successful backport PRs will be merged automatically after passing CI. Questions ?Please refer to the Backport tool documentation |
💔 Some backports could not be created
Note: Successful backport PRs will be merged automatically after passing CI. Manual backportTo create the backport manually run:
Questions ?Please refer to the Backport tool documentation |
## Summary This pr implements a new cases assignee sub-feature, allowing users to control a role's ability to change the assignee of a case. With the permission enabled, they can assign any user to any case, with it disabled, the assignees component is hidden. Read only + enabled: ![image](https://github.com/user-attachments/assets/ba421784-d976-4ae9-a399-e404c26b3842) All + assign disabled: ![image](https://github.com/user-attachments/assets/d835b6f9-5a14-4ae0-abed-b3c3252c2692) ### Checklist - [ ] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios --------- Co-authored-by: Elastic Machine <[email protected]> (cherry picked from commit 0e7c608) # Conflicts: # x-pack/platform/plugins/shared/cases/server/client/cases/bulk_update.test.ts # x-pack/platform/plugins/shared/features/server/__snapshots__/oss_features.test.ts.snap # x-pack/test/api_integration/apis/cases/common/roles.ts # x-pack/test/api_integration/apis/cases/common/users.ts # x-pack/test/api_integration/apis/cases/privileges.ts # x-pack/test/security_api_integration/tests/features/deprecated_features.ts # x-pack/test/spaces_api_integration/common/suites/get.ts
@kobelb I think it made it in to 9.0 bc1, but not 8.18: https://github.com/elastic/kibana/commits/fd1f8b62137f14e93716e298e4e931b576e2ca13 for 9.0 vs
I think it would be ok to include in 8.18 BC2 as long as CI passes eventually, given that it's in 9.0 already, but if anyone disagrees I can close it. |
Summary
This pr implements a new cases assignee sub-feature, allowing users to control a role's ability to change the assignee of a case. With the permission enabled, they can assign any user to any case, with it disabled, the assignees component is hidden.
Read only + enabled:
All + assign disabled:
Checklist