



As a first step, please update the internal user’s role to include:
read + view_index_metadata permissions on wazuh-states-*, especially wazuh-states-vulnerabilities-*.
Align the DLS filter with a field that exists in both alerts and state indices, e.g., cluster.name.
After that change, the Vulnerability Dashboard and Inventory should start populating correctly. Please test and let us know.
BONUS TRACK
If this does not work, could you share some concrete evidence of your current configuration so we can confirm where the problem is? Specifically, we would need:
JSON of the internal role’s index permissions.
The role mapping showing how this role is assigned to the user.
The DLS query/filter currently applied to the role, if any.
Any error messages shown in the Dashboards UI when opening Vulnerability Detection.
With that information we’ll be able to pinpoint the exact root cause.








Hi Saad,
I’ve confirmed internally, that the vulnerability filtering feature with DLS by agent.labels.group is not available in the current Wazuh version. The wazuh-states-vulnerabilities-* indices don’t include the group label yet, so DLS cannot be applied there.
At this point, there are only two possible approaches:
Block tenant users from accessing the vulnerabilities dashboard (safest option to avoid data exposure).
Allow full visibility of vulnerabilities to all tenants (no filtering by group).
This is a known limitation already tracked by the Wazuh team, and will be addressed in a future release.
Another alternative some users apply is DLS by agent IDs, which works but requires manual maintenance and doesn’t scale wel
As a side note, a “hacky” workaround, could be to enrich the vulnerability documents, via Logstash, using agent → group mapping from the Wazuh API, so DLS might work — I haven’t tested it, but in theory it could. There is a non-official and not tested workaround: