The kibana_dashboard_only_user
from the permissions perspective gives the user read-only access to all of Kibana. To have Kibana hide all of the other applications besides the Dashboards app, the Kibana advanced setting: xpackDashboardMode:roles
should be configured to list this role so that all other applications are hidden.
To create a new custom role which grants read-only access to a single space, you can use a cURL request similar to the following against the Kibana Role API
curl -H "kbn-xsrf:true" -H "content-type:application/json" -u elastic:changeme -X PUT http://localhost:5601/api/security/role/engineering_dashboard_only_mode -d '
{
"kibana": {
"space": {
"engineering": ["read"]
}
}
}
'
Then, to configure dashboard only mode to be enabled for this role, you'll want to log into Kibana, select the Space which you're just granted access to, and go to Management -> Advanced Settings. On the advanced settings page, you'll want to change the xpackDashboardMode:roles
setting to list your newly created role: