User Group

The users are split into two groups: static and dynamic. The static users is configured with static users in config file, each in yaml format. The dynamic users are fetched from source periodically, each in json format. Both can be optional and share the same data structure.

The Cap’n Proto RPC publish_dynamic_users command is supported, the published data should be an array of user.

The type for each user group config is map, with two always required keys:

  • name user group name

  • type authenticate type

Groups

Common Keys

name

required, type: metric node name

The name of the user group.

type

required, type: str

The authenticate type of the user group, also decides how to parse other keys.

default: basic

Added in version 1.13.0.

static_users

optional, type: seq

Static user can be added in this array.

See user for detailed structure of user.

source

optional, type: url str | map

Set the fetch source for dynamic users.

We support many type of sources. The type is detected by reading the scheme field of url, or the type key of the map. See source for all supported type of sources.

Dynamic users will be updated if they exist already. If the fetch fail, we will continue keep the old users.

default: not set

cache

optional, type: file path

The local file to cache remote results, it will be used during initial load of the user group.

The file will be created if not existed.

Note

This should be set if you want to publish dynamic users.

default: not set

Added in version 1.7.22.

refresh_interval

optional, type: humanize duration

Set the check interval for user expiration and the fetch interval for dynamic users.

default: 60s

anonymous_user

optional, type: user

Set and enable the anonymous user.

This will be used if no correct username could be found in both static and dynamic users, or no auth info is carried in the client request.

default: not set

Added in version 1.7.13.