kibana/x-pack/plugins/kubernetes_security
Karl Godard d2aab8fc2a
[8.8] Kubernetes dashboard fixes/improvements (#158605) (#158885)
# Backport

This will backport the following commits from `main` to `8.8`:
- [Kubernetes dashboard fixes/improvements
(#158605)](https://github.com/elastic/kibana/pull/158605)

<!--- Backport version: 8.9.7 -->

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

<!--BACKPORT [{"author":{"name":"Karl
Godard","email":"karl.godard@elastic.co"},"sourceCommit":{"committedDate":"2023-06-01T20:53:52Z","message":"Kubernetes
dashboard fixes/improvements (#158605)\n\n## Summary\r\n\r\nFixes a
number of issues on the Kubernetes dashboard in Security.\r\n\r\n**Bug
fixes:**\r\n- Fixed an issue where a default query was being added in a
useMemo\r\nwhich would override the global query causing all charts to
never be\r\nfiltered by the search bar above.\r\n- The empty state would
sometimes prevent new search requests from\r\nrunning which would force
the user to do a full page refresh\r\n- i18n formatting fix ups\r\n-
Includes an update to the cloud_defend regex validation patterns
for\r\ncontainerImageName and
containerImageFullName\r\n\r\n**Enhancements:**\r\n- Tree view selection
remembered (via useLocalStorage)\r\n\r\n**Deprecations**\r\n- Removed
\"responder console\" code from k8s dashboard. The k8smd service\r\nis
slated to be deprecated from Endpoint.\r\n\r\n###
Checklist\r\n\r\nDelete any items that are not applicable to this
PR.\r\n\r\n- [x] Any text added follows [EUI's
writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\r\nsentence case text and includes
[i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n-
[x] [Unit or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common scenarios\r\n- [x] Any UI
touched in this PR is usable by keyboard only (learn more\r\nabout
[keyboard accessibility](https://webaim.org/techniques/keyboard/))\r\n-
[x] Any UI touched in this PR does not create any new axe
failures\r\n(run axe in
browser:\r\n[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),\r\n[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))\r\n-
[x] If a plugin configuration key changed, check if it needs to
be\r\nallowlisted in the cloud and added to the
[docker\r\nlist](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)\r\n-
[x] This renders correctly on smaller devices using a
responsive\r\nlayout. (You can test this [in
your\r\nbrowser](https://www.browserstack.com/guide/responsive-testing-on-local-server))\r\n-
[x] This was checked for
[cross-browser\r\ncompatibility](https://www.elastic.co/support/matrix#matrix_browsers)\r\n\r\n---------\r\n\r\nCo-authored-by:
sec_cloudnative_integrations
<sec-cloudnative-integrations@elastic.co>","sha":"432a5d7734f127c321f75679be913a87bc3c71a6","branchLabelMapping":{"^v8.9.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:fix","backport:prev-minor","Team:
Cloud Native
Integrations","v8.9.0","v8.8.1"],"number":158605,"url":"https://github.com/elastic/kibana/pull/158605","mergeCommit":{"message":"Kubernetes
dashboard fixes/improvements (#158605)\n\n## Summary\r\n\r\nFixes a
number of issues on the Kubernetes dashboard in Security.\r\n\r\n**Bug
fixes:**\r\n- Fixed an issue where a default query was being added in a
useMemo\r\nwhich would override the global query causing all charts to
never be\r\nfiltered by the search bar above.\r\n- The empty state would
sometimes prevent new search requests from\r\nrunning which would force
the user to do a full page refresh\r\n- i18n formatting fix ups\r\n-
Includes an update to the cloud_defend regex validation patterns
for\r\ncontainerImageName and
containerImageFullName\r\n\r\n**Enhancements:**\r\n- Tree view selection
remembered (via useLocalStorage)\r\n\r\n**Deprecations**\r\n- Removed
\"responder console\" code from k8s dashboard. The k8smd service\r\nis
slated to be deprecated from Endpoint.\r\n\r\n###
Checklist\r\n\r\nDelete any items that are not applicable to this
PR.\r\n\r\n- [x] Any text added follows [EUI's
writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\r\nsentence case text and includes
[i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n-
[x] [Unit or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common scenarios\r\n- [x] Any UI
touched in this PR is usable by keyboard only (learn more\r\nabout
[keyboard accessibility](https://webaim.org/techniques/keyboard/))\r\n-
[x] Any UI touched in this PR does not create any new axe
failures\r\n(run axe in
browser:\r\n[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),\r\n[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))\r\n-
[x] If a plugin configuration key changed, check if it needs to
be\r\nallowlisted in the cloud and added to the
[docker\r\nlist](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)\r\n-
[x] This renders correctly on smaller devices using a
responsive\r\nlayout. (You can test this [in
your\r\nbrowser](https://www.browserstack.com/guide/responsive-testing-on-local-server))\r\n-
[x] This was checked for
[cross-browser\r\ncompatibility](https://www.elastic.co/support/matrix#matrix_browsers)\r\n\r\n---------\r\n\r\nCo-authored-by:
sec_cloudnative_integrations
<sec-cloudnative-integrations@elastic.co>","sha":"432a5d7734f127c321f75679be913a87bc3c71a6"}},"sourceBranch":"main","suggestedTargetBranches":["8.8"],"targetPullRequestStates":[{"branch":"main","label":"v8.9.0","labelRegex":"^v8.9.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/158605","number":158605,"mergeCommit":{"message":"Kubernetes
dashboard fixes/improvements (#158605)\n\n## Summary\r\n\r\nFixes a
number of issues on the Kubernetes dashboard in Security.\r\n\r\n**Bug
fixes:**\r\n- Fixed an issue where a default query was being added in a
useMemo\r\nwhich would override the global query causing all charts to
never be\r\nfiltered by the search bar above.\r\n- The empty state would
sometimes prevent new search requests from\r\nrunning which would force
the user to do a full page refresh\r\n- i18n formatting fix ups\r\n-
Includes an update to the cloud_defend regex validation patterns
for\r\ncontainerImageName and
containerImageFullName\r\n\r\n**Enhancements:**\r\n- Tree view selection
remembered (via useLocalStorage)\r\n\r\n**Deprecations**\r\n- Removed
\"responder console\" code from k8s dashboard. The k8smd service\r\nis
slated to be deprecated from Endpoint.\r\n\r\n###
Checklist\r\n\r\nDelete any items that are not applicable to this
PR.\r\n\r\n- [x] Any text added follows [EUI's
writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\r\nsentence case text and includes
[i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n-
[x] [Unit or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common scenarios\r\n- [x] Any UI
touched in this PR is usable by keyboard only (learn more\r\nabout
[keyboard accessibility](https://webaim.org/techniques/keyboard/))\r\n-
[x] Any UI touched in this PR does not create any new axe
failures\r\n(run axe in
browser:\r\n[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),\r\n[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))\r\n-
[x] If a plugin configuration key changed, check if it needs to
be\r\nallowlisted in the cloud and added to the
[docker\r\nlist](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)\r\n-
[x] This renders correctly on smaller devices using a
responsive\r\nlayout. (You can test this [in
your\r\nbrowser](https://www.browserstack.com/guide/responsive-testing-on-local-server))\r\n-
[x] This was checked for
[cross-browser\r\ncompatibility](https://www.elastic.co/support/matrix#matrix_browsers)\r\n\r\n---------\r\n\r\nCo-authored-by:
sec_cloudnative_integrations
<sec-cloudnative-integrations@elastic.co>","sha":"432a5d7734f127c321f75679be913a87bc3c71a6"}},{"branch":"8.8","label":"v8.8.1","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->
2023-06-01 20:02:16 -07:00
..
common [8.8] Kubernetes dashboard fixes/improvements (#158605) (#158885) 2023-06-01 20:02:16 -07:00
public [8.8] Kubernetes dashboard fixes/improvements (#158605) (#158885) 2023-06-01 20:02:16 -07:00
server [8.8] Kubernetes dashboard fixes/improvements (#158605) (#158885) 2023-06-01 20:02:16 -07:00
.eslintrc.json
jest.config.js
kibana.jsonc Session view and k8s dashboard fixes (#154982) 2023-04-17 16:22:28 -07:00
package.json [packages] migrate all plugins to packages (#148130) 2023-02-08 21:06:50 -06:00
README.md Add readme for kubernetes security (#138663) 2022-09-01 07:18:23 +09:30
tsconfig.json [Shared UX] Adoption of Shared UX Route component (#150357) 2023-02-14 19:25:04 +00:00

Kubernetes Security

This plugin provides interactive visualizations of your Kubernetes workload and session data.

Overview

Allow users to explore the data stream from k8s environment that being monitored by Elastic Agent(+ endpoint integration) in a session view with cloud and k8s context. For more context, see internal doc.

This plugin is currently being used as a part of Security Solution features under the /app/security/kubernetes page.

API

getKubernetesPage

Returns the kubernetes page. Parameters

Property Description Type
kubernetesSecurityDeps Parameters object object

kubernetesSecurityDeps

Property Description Type
filter The global filter component used across pages in Kibana ReactNode
renderSessionsView Function to render sessions view table function
indexPattern Index pattern used for the data source in the Kubernetes page object
globalFilter Includes query and timerange used for filtering object

indexPattern

Property Description Type
fields A list of FieldSpec FieldSpec[] from @kbn/data-plugin/common
title Index pattern string representation string

globalFilter

Property Description Type
filterQuery Stringified Elasticsearch filter query. See doc. Optional, string
startDate Start date time of timerange filter, in ISO format string
endDate End date time of timerange filter, in ISO format string

Page preview

preview