Search code examples
kibanakibana-4

How to set authentication in kibana


Is it possible to enable authentication in Kibana in order to restrict access to a dashboard to only be accessible to particular users?


Solution

  • Kibana itself doesn't support authentication or restricting access to dashboards.

    You can restrict access to Kibana 4 using nginx as a proxy in front of Kibana as described here: https://serverfault.com/a/345244. Just set proxy_pass to port 5601 and disable this port on firewall for others. This will completly enable or disable Kibana.

    Elastic also has a tool called Shield which enables you to manage security of elasticsearch. With Shield you can for example allow someone to analyze data in specific indexes with read-only permissions. https://www.elastic.co/products/shield


    Edit: Elastic has an issue on github and they recommend to use Shield.

    1. Install Shield (plugin for elasticsearch) following these instructions
    2. Configure roles for Kibana users
    3. Configure Kibana to work with Shield

    Remember Shield provides only index-level access control. That means user A will be able to see all dashboards but some of them will be empty (because he doesn't have access to all indices).