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

[Security Solution] "No Data" screen is displayed when a user has missing privileges #114960

Open
Tracked by #116336
xcrzx opened this issue Oct 14, 2021 · 10 comments
Open
Tracked by #116336
Labels
bug Fixes for quality problems that affect the customer experience Feature:Detection Alerts/Rules RBAC Security Solution RBAC for rules and alerts impact:medium Addressing this issue will have a medium level of impact on the quality/strength of our product. needs design SecuritySolution:QAAssist Part of QA testing process for release Team:Detection Engine Security Solution Detection Engine Area Team:Detections and Resp Security Detection Response Team Team: SecuritySolution Security Solutions Team working on SIEM, Endpoint, Timeline, Resolver, etc.

Comments

@xcrzx
Copy link
Contributor

xcrzx commented Oct 14, 2021

Description

Users with insufficient privileges to use Security Solution see welcome screen with a call to add more data instead of the insufficient privileges callout. That could confuse some users as data is already there, but it is not visible due to a lack of the required privileges.

Steps to reproduce

  1. Create a role with the following privileges: sec-admin-user
  2. Log in as a user with the created role to Kibana
  3. Navigate to Security > Overview

Current behavior

Welcome screen is displayed with a call to add data:

It seems like the empty screen is being shown because the user doesn't have privileges to .log-* indices.

Expected behavior

A clear message to the user that they do not have the required read privilege for the .log-* indices to access Security Solution. Something similar to the following callout:

@xcrzx xcrzx added bug Fixes for quality problems that affect the customer experience triage_needed Team:Detections and Resp Security Detection Response Team Team: SecuritySolution Security Solutions Team working on SIEM, Endpoint, Timeline, Resolver, etc. v7.16.0 labels Oct 14, 2021
@elasticmachine
Copy link
Contributor

Pinging @elastic/security-solution (Team: SecuritySolution)

@elasticmachine
Copy link
Contributor

Pinging @elastic/security-detections-response (Team:Detections and Resp)

@banderror
Copy link
Contributor

Should be fixed in #115016 🙌

@xcrzx
Copy link
Contributor Author

xcrzx commented Oct 15, 2021

Should be fixed in #115016 🙌

We will still have inconsistent UI when users don't have privileges to read from filebeat-*, packetbeat-*, logs-*, and endgame-* indices:

Page What is displayed
Overview ⚠️ Add Data screen
Alerts Fully accessible
Rules Fully accessible
Exceptions Fully accessible
Hosts ⚠️ Add Data screen
Network ⚠️ Add Data screen
Timelines ⚠️ Add Data screen
Endpoints No privileges message
Trusted Applications No privileges message
Event Filters No privileges message
Host Isolation Exceptions No privileges message

In my opinion, we should not show the Add Data screen to users with insufficient privileges as that will mislead them. They would not solve their access issues by adding data as there is already data in indices. Instead, we should communicate what is wrong with their privileges and how to set them up properly. But this is more of a product question. @jethr0null, could you please provide your input on what we should display to users in that case?

@peluja1012 peluja1012 added Team:Detection Rule Management Security Detection Rule Management Team Team:Security Solution Platform Security Solution Platform Team and removed Team:Detection Rule Management Security Detection Rule Management Team labels Oct 18, 2021
@jethr0null
Copy link

@xcrzx your proposal to make the experience consistent (showing the no privileges message) makes sense to me. That said, I am not able to speak to any design conventions we might have in place (nor do I focus on those specific UIs from a PM perspective) so I'll loop a few folks in to confirm that the guidance/feedback I'm providing is sound.

@paulewing does the proposed path forward make sense to you? @yiyangliu9286 are there any design conventions that we should be aware of as we consider this change?

@yctercero yctercero self-assigned this Oct 20, 2021
@cchaos
Copy link
Contributor

cchaos commented Oct 21, 2021

I think this has more to do with the new "No data" logic check that was implemented for the interstitial screen. If there truly is data, but the user has no access to it, then likely it can bypass the "No data" screen to the final page where the original callout occurs (at least as a quick fix). cc @kevinlog as you implemented this new logic check.

But if a user has no access at all, I'm not sure there's much point in sending them all the way to the content page with a dismissable message. Likely design could help with consistent messaging/UI to present these types of screens across the entire soution.

@kevinlog
Copy link
Contributor

kevinlog commented Nov 1, 2021

spoke with @yctercero offline.

In a previous conversation with @xcrzx , I asked if this was a regression introduced by the new Data Screen and he said he didn't think it was.

I wouldn't expect the new Add Data screen to change existing behavior as it is still shown based on Sourcerer and the indicesExist check.

For instance, here's the logic on the Network page: https://github.com/elastic/kibana/blob/main/x-pack/plugins/security_solution/public/network/pages/network.tsx#L155

Let me know of any questions or clarifications needed!

@yctercero
Copy link
Contributor

@kevinlog thanks so much!

We're taking it on and taking it as an opportunity to audit the UX around these privileges.

@peluja1012 peluja1012 added the 8.2 candidate considered, but not committed, for 8.2 release label Jan 19, 2022
@peluja1012 peluja1012 removed the 8.2 candidate considered, but not committed, for 8.2 release label Feb 1, 2022
@yctercero yctercero added the SecuritySolution:QAAssist Part of QA testing process for release label Feb 28, 2022
@peluja1012 peluja1012 added the Feature:Detection Alerts/Rules RBAC Security Solution RBAC for rules and alerts label Apr 4, 2022
@yctercero yctercero added Team:Detection Engine Security Solution Detection Engine Area and removed Team:Security Solution Platform Security Solution Platform Team labels May 14, 2023
@yctercero yctercero removed their assignment Jun 5, 2024
@pborgonovi
Copy link
Contributor

On latest 8.15 BC:

Created the following role and had a new user assigned to it:
image

Upon login and launching Security app:

Screen.Recording.2024-07-19.at.10.21.44.AM.mov

@yctercero
Copy link
Contributor

@ARWNightingale is working on designs for updated privileges for exceptions, rules, alerts. Can we wrap this ticket into that effort? https://github.com/elastic/security-team/issues/10405

cc @approksiu

@yctercero yctercero added the impact:medium Addressing this issue will have a medium level of impact on the quality/strength of our product. label Sep 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Fixes for quality problems that affect the customer experience Feature:Detection Alerts/Rules RBAC Security Solution RBAC for rules and alerts impact:medium Addressing this issue will have a medium level of impact on the quality/strength of our product. needs design SecuritySolution:QAAssist Part of QA testing process for release Team:Detection Engine Security Solution Detection Engine Area Team:Detections and Resp Security Detection Response Team Team: SecuritySolution Security Solutions Team working on SIEM, Endpoint, Timeline, Resolver, etc.
Projects
None yet
Development

No branches or pull requests

10 participants