Spec-Zone.ru › Elasticsearch 7
›Elasticsearch Guide [7.17] ›REST API ›Определения

Ресурсы сопоставления ролей

Ресурс сопоставления ролей имеет следующие свойства:

enabled
(Булево) Сопоставления, у которых enabled установлено в значение false, игнорируются при выполнении сопоставления ролей.
metadata
(объект) Дополнительные метаданные, которые помогают определить, какие роли назначены каждому пользователю. Внутри объекта metadata ключи, начинающиеся с _, зарезервированы для использования системой.
roles
(список) Список ролей, которые предоставляются пользователям, соответствующим правилам сопоставления ролей.
rules

(объект) Правила, определяющие, какие пользователи должны соответствовать сопоставлению. Правило — это логическое условие, которое выражается с помощью JSON DSL. DSL поддерживает следующие типы правил:

any
(массив правил) Если хотя бы одно из его дочерних правил истинно, оно оценивается как true.
all
(массив правил) Если все его дочерние правила истинны, оно оценивается как true.
field
(объект) См. Правила полей.
except
(объект) Одно правило в виде объекта. Допустимо только как дочернее правило правила all. Если его дочернее правило — false, то except равно true.

Правила полей

Правило field — основной строительный блок для выражения сопоставления ролей. Оно принимает единственный объект в качестве значения, и этот объект должен содержать единственный член с ключом F и значением V. Правило поля ищет значение F в объекте пользователя и проверяет, совпадает ли значение пользователя со значением V.

Значение, указанное в правиле поля, может быть одного из следующих типов:

Тип Описание Пример

Простая строка

Точно соответствует предоставленному значению.

"esadmin"

Строка с подстановочными знаками

Соответствует предоставленному значению с использованием подстановочных знаков.

"*,dc=example,dc=com"

Регулярное выражение

Соответствует предоставленному значению с использованием Lucene regexp.

"/.*-admin[0-9]*/"

Число

Соответствует эквивалентному числовому значению.

7

Null

Соответствует значению null или отсутствующему значению.

null

Массив

Проверяет каждый элемент массива в соответствии с вышеуказанными определениями. Если хотя бы один из элементов соответствует, совпадение считается успешным.

["admin", "operator"]

Поля пользователя

Объект пользователя, по которому оцениваются правила, имеет следующие поля:

username
(строка) Имя пользователя, которое используют функции безопасности Elasticsearch для идентификации этого пользователя. Например, "username": "jsmith".
dn
(строка) Полное доменное имя пользователя. Например, "dn": "cn=jsmith,ou=users,dc=example,dc=com",.
groups
(массив строк) Группы, к которым принадлежит пользователь. Например, "groups" : [ "cn=admin,ou=groups,dc=example,dc=com","cn=esusers,ou=groups,dc=example,dc=com ].
metadata
(объект) Дополнительные метаданные для пользователя. Например, "metadata": { "cn": "John Smith" }.
realm
(объект) Область, которая выполнила аутентификацию пользователя. Единственным полем в этом объекте является имя области. Например, "realm": { "name": "ldap1" }.

Поле groups многозначное; пользователь может принадлежать к нескольким группам. При применении правила field к многозначному полю, оно считается соответствующим, если хотя бы одно из значений членов соответствует. Например, следующее правило соответствует любому пользователю, который является членом группы admin, независимо от других групп, к которым он принадлежит:

{ "field" : { "groups" : "admin" } }

Дополнительные сведения о конкретных областях см. в разделе Области Active Directory и LDAP.

© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/role-mapping-resources.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API