The index mapping is used to configure different routes based on the hierarchy field. Routing the data into different indexes allows for setting up Kibana with role based access.
By default everything is routed into the default
index.
{
"default" : [
"/.*",
"[a-zA-Z]:/.*"
]
}
You can created different routes to setup role based access in Kibana. For example:
U:/share/departments/sales could be routed to the sales
index and U:/share/deparments/dev to the dev
index.
{
"sales" : [
"U:/share/departments/sales/.*"
],
"dev" : [
"U:/share/departments/dev/.*"
]
}
Then in Kibana you can create the roles accordingly (make sure you are running Elasticsearch and Kibana secure), use the following settings:
- Elasticsearch - Cluster privileges - keep empty
- Elasticsearch - Run As privileges - keep empty
- Elasticsearch - Index privileges - Indices -[insights_default_sales, insightsanalytics_structure_sales, insightsanalytics_link_sales] Replace
sales
to the name given to the route/mapping. - Elasticsearch - Index privileges - Privileges -
read
Add a global space configuration to the Kibana section. Recommended is to only give read access to Discover, Visualize and Dashboard.