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

Design the data persistence model #345

Open
2 of 3 tasks
Tracked by #344
AlexRuiz7 opened this issue Aug 7, 2024 · 2 comments
Open
2 of 3 tasks
Tracked by #344

Design the data persistence model #345

AlexRuiz7 opened this issue Aug 7, 2024 · 2 comments
Assignees
Labels
level/task Task issue type/enhancement Enhancement issue

Comments

@AlexRuiz7
Copy link
Member

AlexRuiz7 commented Aug 7, 2024

Description

The goal of this issue is to generate the data persistence model described in #344. To do that, we'll generate an E/R diagram and iterate it until the data model fulfills the requirements.

Tasks

  • Create a basic Entity-Relation diagram to design the new data persistence model.
  • Ensure the design allows RBAC.
  • Iterate the diagram, including the most important fields.
@AlexRuiz7 AlexRuiz7 added level/task Task issue type/enhancement Enhancement issue labels Aug 7, 2024
@AlexRuiz7
Copy link
Member Author

AlexRuiz7 commented Aug 7, 2024

Entities

Note

rev 0.1 - August 7th, 2024: Add initial diagrams
rev 0.2 - August 7th, 2024: Removed MONITORING index

---
title: Wazuh Data Model
---
erDiagram
    AGENT
    COMMAND
    ALERT
    INVENTORY
    VULNERABILITY
    FIM
    SCA
    STATISTICS
Loading

Relations

---
title: Wazuh Data Model
---
erDiagram
    AGENT {
        string id PK
        string internal_key UK
        string[] groups
    }
    COMMAND {
        string id PK "The command's ID"
        string agent_id FK "The agent's ID"
    }
    ALERT {
        string id PK
        string agent_id UK
        string[] groups
    }
    INVENTORY {
        string id PK
        string agent_id UK
        string[] groups
    }
    VULNERABILITY {
        string id PK
        string agent_id UK
        string[] groups
    }
    FIM {
        string id PK
        string agent_id UK
        string[] groups
    }
    SCA {
        string id PK
        string agent_id UK
        string[] groups
    }
    STATISTICS {
        string id PK
    }
    AGENT one to zero or more COMMAND : "is sent to"
    AGENT one to zero or more ALERT : generates
    AGENT one to one INVENTORY : has
    AGENT one to zero or more VULNERABILITY : has
    AGENT one to zero or more FIM : has
    AGENT one to zero or more SCA : has
Loading

@AlexRuiz7
Copy link
Member Author

Moved to the Feature Complete stage.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
level/task Task issue type/enhancement Enhancement issue
Projects
Status: On hold
Development

No branches or pull requests

2 participants