Skip to content
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

Add an agent selector to IT Hygiene application #6005

Conversation

Desvelao
Copy link
Member

@Desvelao Desvelao commented Oct 16, 2023

Description

This pull request adds an agent selector to the IT Hygiene application.

Changes:

  • Wrapped the IT Hygiene application with a required selection of agent
  • Added a Explore agent button to the IT Hygiene application
  • The Explore agent button of alert modules now display the global agent
    selector instead of the local one.
  • Removed the local agent selector modal of Explore agent button on alert
    modules
  • Removed the related action creator and reducer case for SHOW_EXPLORE_AGENT_MODAL
  • Refactor MITRE ATT&CK panel to allow the reactivity when changing the selected agent
    • Rename MITRE to MITRE ATT&CK in the panel
  • Rename mitre_top to mitre-top according to the file naming convention
  • Add reactivity to the FIM: Recent events table when changing the
    selected agent

Issues Resolved

[List any issues this PR will resolve]

Evidence

image
image
image
image

Test

Legend:
⚫: none
🟢: pass
🟡: warning
🔴: fail
⚪: not applicable

UI

Test Chrome
Without selected agent, access to the IT Hygiene application. A prompt should indicate the requirement of selecting an agent.
Selecting an agent in the IT Hygiene agent selection prompt should display the data related to the agent
Use the Explore agent button of IT Hygiene to unpin the agent. The prompt should display it is needed a selected agent.
Use the Explore agent button of IT Hygiene to change the selected agent. The view and displayed data should be related to the selected agent. Ensure the data panel are updated with the new information.
Ensure the Explore agent button on the legacy modules (Dashboard, Events, Panel, Inventory tabs) allows to select an agent and the search URL paramenter is changed accordingly (agent, agentId).
Ensure the Explore agent button on the legacy modules allows to unpint an agent and the search URL paramenter is removed accordingly (agent, agentId).
Pin an agent and navigate to Inventory data, Stats and Configuration. Ensure the data is related to the pinned agent.

Details

⚫ Without selected agent, access to the IT Hygiene application. A prompt should indicate the requirement of selecting an agent.

Chrome - ⚫

⚫ Selecting an agent in the IT Hygiene agent selection prompt should display the data related to the agent

Chrome - ⚫

⚫ Use the Explore agent button of IT Hygiene to unpin the agent. The prompt should display it is needed a selected agent.

Chrome - ⚫

⚫ Use the Explore agent button of IT Hygiene to change the selected agent. The view and displayed data should be related to the selected agent. Ensure the data panel are updated with the new information.

Chrome - ⚫

⚫ Ensure the Explore agent button on the legacy modules (Dashboard, Events, Panel, Inventory tabs) allows to select an agent and the search URL paramenter is changed accordingly (agent, agentId).

Chrome - ⚫

⚫ Ensure the Explore agent button on the legacy modules allows to unpint an agent and the search URL paramenter is removed accordingly (agent, agentId).

Chrome - ⚫

⚫ Pin an agent and navigate to Inventory data, Stats and Configuration. Ensure the data is related to the pinned agent.

Chrome - ⚫

Check List

  • All tests pass
    • yarn test:jest
  • New functionality includes testing.
  • New functionality has been documented.
  • Update CHANGELOG.md
  • Commits are signed per the DCO using --signoff

- Wrapped the IT Hygiene application with a required selection of agent
- Added a Explore agent button to the IT Hygiene application
- The Explore agent button of alert modules now display the global agent
  selector instead of the local one.
- Removed the local agent selector modal of Explore agent button on alert
  modules
- Removed the related action creator and reducer case for SHOW_EXPLORE_AGENT_MODAL
@Desvelao Desvelao self-assigned this Oct 16, 2023
@Desvelao Desvelao requested a review from a team as a code owner October 16, 2023 07:46
… agent

- Refactor MITRE ATT&CK panel
  - Rename MITRE to MITRE ATT&CK in the panel
- Rename mitre_top to mitre-top according to the file naming convention
- Add reactivity to the FIM: Recent events table when changing the
  selected agent
@yenienserrano
Copy link
Member

yenienserrano commented Oct 17, 2023

Test

Legend:
⚫: none
🟢: pass
🟡: warning
🔴: fail
⚪: not applicable

UI

Test Chrome
Without selected agent, access to the IT Hygiene application. A prompt should indicate the requirement of selecting an agent. 🟢
Selecting an agent in the IT Hygiene agent selection prompt should display the data related to the agent 🟢
Use the Explore agent button of IT Hygiene to unpin the agent. The prompt should display it is needed a selected agent. 🟢
Use the Explore agent button of IT Hygiene to change the selected agent. The view and displayed data should be related to the selected agent. Ensure the data panel are updated with the new information. 🟢
Ensure the Explore agent button on the legacy modules (Dashboard, Events, Panel, Inventory tabs) allows to select an agent and the search URL paramenter is changed accordingly (agent, agentId). 🟢
Ensure the Explore agent button on the legacy modules allows to unpint an agent and the search URL paramenter is removed accordingly (agent, agentId). 🟢
Pin an agent and navigate to Inventory data, Stats and Configuration. Ensure the data is related to the pinned agent. 🟢

Details

🟢 Without selected agent, access to the IT Hygiene application. A prompt should indicate the requirement of selecting an agent.

Chrome - 🟢

image

🟢 Selecting an agent in the IT Hygiene agent selection prompt should display the data related to the agent

Chrome - 🟢

image
image

🟢 Use the Explore agent button of IT Hygiene to unpin the agent. The prompt should display it is needed a selected agent.

Chrome - 🟢

image

To unpin the agent you have to click on explore agent to open the modal, and then you can unpin the agent, maybe it is better to do as it works in the rest of the application ex: vulnerabilities.

image
image
image

Vulnerabilities

image

🟢 Use the Explore agent button of IT Hygiene to change the selected agent. The view and displayed data should be related to the selected agent. Ensure the data panel are updated with the new information.

Chrome - 🟢

image
image

🟢 Ensure the Explore agent button on the legacy modules (Dashboard, Events, Panel, Inventory tabs) allows to select an agent and the search URL paramenter is changed accordingly (agent, agentId).

Chrome - 🟢

image
image

🟢 Ensure the Explore agent button on the legacy modules allows to unpint an agent and the search URL paramenter is removed accordingly (agent, agentId).

Chrome - 🟢

image
image

🟢 Pin an agent and navigate to Inventory data, Stats and Configuration. Ensure the data is related to the pinned agent.

Chrome - 🟢

image
image
image

- Move prompt agent never connected to prompts directory
  - Remove duplicated and related components on agent welcome, inventory
    data and agent configuration
- Change button on prompt agent never connected to Select agent
- Change Explore agent button on agent welcome
@Desvelao
Copy link
Member Author

A new manual test was added to the suite.

Copy link
Member

@yenienserrano yenienserrano left a comment

Choose a reason for hiding this comment

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

LGTM

@Desvelao Desvelao mentioned this pull request Oct 23, 2023
6 tasks
@github-actions
Copy link
Contributor

Code coverage (Jest) % values
Statements 11.82% ( 4033 / 34103 )
Branches 8.04% ( 1849 / 22997 )
Functions 11.06% ( 900 / 8133 )
Lines 12% ( 3920 / 32661 )

@Desvelao Desvelao merged commit 15519de into feat/83-move-menu-items-to-applications Oct 23, 2023
2 checks passed
@Desvelao Desvelao deleted the feat/83-add-agent-selector-it-hygiene-application branch October 23, 2023 15:09
asteriscos added a commit that referenced this pull request Nov 3, 2023
* feat(menu): create applications for each menu item

* fix(share-data-applications): save selected agent data into sessionStorage

* fix(menu): redirection other tabs in RBAC application

* fix(menu): redirection to the application itself

* fix(menu): rename MITRE ATT&CK appplication

* feat(menu): add GDPR application

* feat(menu): Add modules and Miscellaneous applications

* feat(menu): remove navigation by tabs in Settings

* feat(menu): remove navigation by tabs in Tools

* feat(menu): add Overview app

* fix(menu): change application name to Security configuration assessment

* fix(menu): change app name to Docker listener

* feat(menu): add services to app redirection

* feat(menu): use i18n to define the app and categories name

* fix(menu): removed wz- prefix from the applications and renamed status to server-status due to application ID conflicts

* 5814 adapt the breadcrum to the new menu (#5817)

* Change Agents for Endpoints summary

* Remove unnecessary styles

* Remove deprecated code

* Remove deprecated code

* Revert changes in wz-menu.js

* Remove deprecated code

* Change some breadcrumbs

* Remove wazuh menu

* Change Management breadcrumbs

* Change setGlobalBreadcrumbs for withGlobalBreadcrumbs hoc

* Fix test

* Change href to agent

* Fix redirection breadcrumbs: inventory data, stats and configuration

* Add Miscellaneous to tab into Configuration App (#5830)

* Add Tab into Configuration App to show Miscellaneous as a tab

* Change compareCurrentAppID: wz-configuration to configuration

---------

Co-authored-by: Ian Yenien Serrano <63758389+yenienserrano@users.noreply.github.com>
Co-authored-by: yenienserrano <ian.serrano@wazuh.com>
Co-authored-by: Antonio David Gutiérrez <antonio.gutierrez@wazuh.com>

* Adapt the new global menu redirections (#5827)

* Fix endpoint summary and server managment redirections

* fix: adapt the redirections to applications

- Endpoints summary
- IT Hygiene
- Groups

* fix(health-check): fix redirection to health check the removed the tab query parameter from URL and then the previous URL could not be rebuilt

* fix(redirections): redirection from Overview app to Endpoints summary

* fix(redirections): removed wz- prefix from the redirections to applications

* fix: renamed apps redirection URLs

* fix: app redirections URLs

* fix: test

* fix: tests

---------

Co-authored-by: Antonio David Gutiérrez <antonio.gutierrez@wazuh.com>

* Modify Overview application to display the new menu (#5852)

* Fix endpoint summary and server managment redirections

* fix: adapt the redirections to applications

- Endpoints summary
- IT Hygiene
- Groups

* fix(health-check): fix redirection to health check the removed the tab query parameter from URL and then the previous URL could not be rebuilt

* fix(redirections): redirection from Overview app to Endpoints summary

* fix(redirections): removed wz- prefix from the redirections to applications

* Change overview page, linked to the new menu estructure

* fix: move definitions of applications in the home application

* fix: application descriptions

---------

Co-authored-by: Antonio David Gutiérrez <antonio.gutierrez@wazuh.com>

* Remove logo side bar and update logo app description (#5882)

Co-authored-by: Antonio David Gutiérrez <antonio.gutierrez@wazuh.com>

* fix: customization.logo.app setting description

* Merge master into feat/83-move-menu-items-to-applications

* fix: remove comment on test file

* fix: remove comment on test file

* Fix redirection (#5926)

Fix redirection agents table

* Fix redirection to groups and statistics (#5972)

* Fix groups redirection

* Fix statistics redirection

* Fix/5964 fix the breadcrumb of applications (#5968)

* Remove wazuh in breadcrumb

* Change breadcrumb OSD

* Add comment

* Center the agent's name in the breadcrumb

* Update sidebar menu and overview app (#5928)

* Update sidebar menu and overview app

* fix redirections

* Agent message fixed

* Server management order change to 6

* i18n added to applications

* fixed some redirections

---------

Co-authored-by: Antonio <34042064+Desvelao@users.noreply.github.com>
Co-authored-by: Ian Yenien Serrano <63758389+yenienserrano@users.noreply.github.com>

* Adapt the navigation between applications (#5983)

* feat: adapt navigation between the applications

* Change redirection

* fix(test): mock service

---------

Co-authored-by: yenienserrano <ian.serrano@wazuh.com>

* Remove categories from overview (#5991)

* Remove categories from overview

* Fix snapshot

---------

Co-authored-by: Antonio <34042064+Desvelao@users.noreply.github.com>

* fix: app category name and id

* Add order to applications (#6015)

* feat(applications): add order definition to applications

* feat(applications): register order to the applications

* Remove reloading when changing app (#5986)

* change app/discover for app/wz-discover

* Remove reload and add sync history

* Change defaultRout in opensearch_dashboards.yml osd-dev

* feat: adapt navigation between the applications

---------

Co-authored-by: Antonio David Gutiérrez <antonio.gutierrez@wazuh.com>
Co-authored-by: Antonio <34042064+Desvelao@users.noreply.github.com>

* Rename applications on agent menu (#5997)

* feat: rename applications on agent menu

Refactor agent menu to use the applications and categories
Simplify the data saved in the local storage to keep the pinned
applications

* Recover the redirectTo in settings and wazuh settings

* Fix pin icon in menu agent

* Fix agent navbar

---------

Co-authored-by: yenienserrano <ian.serrano@wazuh.com>

* Remove `extensions.*` and `disabled_roles` settings (#5988)

* remove modules

* registry.json extension remove

* remove getExtension from menu-agent and wz-menu

* Delete extensions logic

* Fix wazuh version test

* remove disabled_roles extructure

* remove disabled_roles endpoint

* Add a migration to remove the extensions key in the host and add test for it

* mange-host and update-registry fixed

* fix: render tabs in Wazuh plugin settings application and minor enhancements

* feat: remove unused states in Redux store and minor fixes on breadcrumbs

- Remove managementReducers key from Redux store and related action
  creators and related usage
- Remove toolsReducers key from Redux store and related action
  creators and related usage
- Remove securityReducers key from Redux store and related action
  creators and related usage
- Fix some breadcrumbs

* fix: revert content of osquery.js files

* fix: revert configuration in .settings.json

* fix(test): fix test

---------

Co-authored-by: Antonio David Gutiérrez <antonio.gutierrez@wazuh.com>

* Add an agent selector to IT Hygiene application (#6005)

* feat: add agent selector to IT Hygiene application

- Wrapped the IT Hygiene application with a required selection of agent
- Added a Explore agent button to the IT Hygiene application
- The Explore agent button of alert modules now display the global agent
  selector instead of the local one.
- Removed the local agent selector modal of Explore agent button on alert
  modules
- Removed the related action creator and reducer case for SHOW_EXPLORE_AGENT_MODAL

* feat: add reactivity to agent welcome view when changing the selected agent

- Refactor MITRE ATT&CK panel
  - Rename MITRE to MITRE ATT&CK in the panel
- Rename mitre_top to mitre-top according to the file naming convention
- Add reactivity to the FIM: Recent events table when changing the
  selected agent

* feat(it-hygiene): fix problems when selecting and agent and navigate

- Move prompt agent never connected to prompts directory
  - Remove duplicated and related components on agent welcome, inventory
    data and agent configuration
- Change button on prompt agent never connected to Select agent
- Change Explore agent button on agent welcome

* fix: imports on prompt and add clarification on agent welcome

* fix(it-hygiene): change mitre attack referecence

* Fix navbar agent styles

* Fix refresh page: inventory data and stats

---------

Co-authored-by: yenienserrano <ian.serrano@wazuh.com>

* fix: breadcrumb of Endpoint groups application

* Fix change APIs (#6056)

* Fix change apis

* Change management label in menu

* Fix Switchtab exception in dashboards (#6019)

* Define the component properties in the controller constructor

* Delete redundant fetch in Events refresh button

* Prevent duplicate request on Events initial requests

* Revert "Prevent duplicate request on Events initial requests"

This reverts commit db721a1.

* Remove dulplicate request on changeTabView

* Fix explore agent button

* Fix imposter with explore agent button

* Change names of the applications in the menu

* Change breadcrumbs

* Change Wazuh API configuration to API Configuration

* Change the style of Home icons

* Change applications order

* Change comment categories ID

* Change id to new names in applications

* Change redirections without refresh page

* Fix test

* changelog: add entries

---------

Co-authored-by: Ian Yenien Serrano <63758389+yenienserrano@users.noreply.github.com>
Co-authored-by: JuanGarriuz <juan.garcia@wazuh.com>
Co-authored-by: yenienserrano <ian.serrano@wazuh.com>
Co-authored-by: Federico Rodriguez <federico.rodriguez@wazuh.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants