123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- [[ingest-node-set-security-user-processor]]
- === Set security user processor
- ++++
- <titleabbrev>Set security user</titleabbrev>
- ++++
- Sets user-related details (such as `username`, `roles`, `email`, `full_name`,
- `metadata`, `api_key`, `realm` and `authentication_type`) from the current
- authenticated user to the current document by pre-processing the ingest.
- The `api_key` property exists only if the user authenticates with an
- API key. It is an object containing the `id` and `name` fields of the API key.
- The `realm` property is also an object with two fields, `name` and `type`.
- When using API key authentication, the `realm` property refers to the realm
- from which the API key is created.
- The `authentication_type` property is a string that can take value from
- `REALM`, `API_KEY`, `TOKEN` and `ANONYMOUS`.
- IMPORTANT: Requires an authenticated user for the index request.
- [[set-security-user-options]]
- .Set Security User Options
- [options="header"]
- |======
- | Name | Required | Default | Description
- | `field` | yes | - | The field to store the user information into.
- | `properties` | no | [`username`, `roles`, `email`, `full_name`, `metadata`, `api_key`, `realm`, `authentication_type`] | Controls what user related properties are added to the `field`.
- include::common-options.asciidoc[]
- |======
- The following example adds all user details for the current authenticated user
- to the `user` field for all documents that are processed by this pipeline:
- [source,js]
- --------------------------------------------------
- {
- "processors" : [
- {
- "set_security_user": {
- "field": "user"
- }
- }
- ]
- }
- --------------------------------------------------
- // NOTCONSOLE
|