Grant privileges and roles needed for setupedit

Setting up Functionbeat is an admin-level task that requires extra privileges. As a best practice, grant the setup role to administrators only, and use a more restrictive role for event publishing.

Administrators who set up Functionbeat typically need to load mappings, dashboards, and other objects used to index data into Elasticsearch and visualize it in Kibana.

To grant users the required privileges:

  1. Create a setup role, called something like functionbeat_setup, that has the following privileges:

    Type Privilege Purpose

    Cluster

    monitor

    Retrieve cluster details (e.g. version)

    Cluster

    manage_ilm

    Set up and manage index lifecycle management (ILM) policy

    Cluster

    manage_ml

    Set up Machine Learning job configurations

    Index

    manage on functionbeat-* indices

    Set up aliases used by ILM

    Index

    write on functionbeat-* indices

    Write Functionbeat indices in order to index, update, and delete documents

    Index

    read on functionbeat-* indices

    Read Functionbeat indices in order to set up Machine Learning jobs

    Omit any privileges that aren’t relevant in your environment.

    These instructions assume that you are using the default name for Functionbeat indices. If functionbeat-* is not listed, or you are using a custom name, enter it manually and modify the privileges to match your index naming pattern.

  2. Assign the setup role, along with the following built-in roles, to users who need to set up Functionbeat:

    Role Purpose

    kibana_admin

    Load dependencies, such as example dashboards, if available, into Kibana

    ingest_admin

    Set up index templates and, if available, ingest pipelines

    machine_learning_admin

    Provide full use of the machine learning APIs and grant read/write access to all machine learning indices

    Omit any roles that aren’t relevant in your environment.