Spec-Zone.ru › Elasticsearch 8
›Elasticsearch Guide [8.17] ›REST API ›Security APIs

API получения привилегий приложений

Справочник новых API

Для получения актуальных данных об API обратитесь к Security APIs.

Получает привилегии приложений.

Запрос

GET /_security/privilege

GET /_security/privilege/<application>

GET /_security/privilege/<application>/<privilege>

Предварительные условия

Для использования этого API у вас должны быть:

  • привилегия кластера read_security (или более широкая привилегия, например, manage_security или all); или
  • глобальная привилегия "Управление привилегиями приложений" для приложения, на которое ссылается запрос

Описание

Чтобы проверить привилегии приложения пользователя, используйте API проверки наличия привилегий.

Параметры пути

application
(Необязательно, строка) Название приложения. Привилегии приложения всегда связаны ровно с одним приложением. Если вы не укажете этот параметр, API вернёт информацию обо всех привилегиях для всех приложений.
privilege
(Необязательно, строка) Название привилегии. Если вы не укажете этот параметр, API вернёт информацию обо всех привилегиях для запрошенного приложения.

Примеры

Следующий пример получает информацию о привилегии read для приложения app01:

resp = client.security.get_privileges(
    application="myapp",
    name="read",
)
print(resp)
const response = await client.security.getPrivileges({
  application: "myapp",
  name: "read",
});
console.log(response);
GET /_security/privilege/myapp/read

Успешный вызов возвращает объект, индексированный по имени приложения и имени привилегии. Если привилегия не определена, запрос отвечает кодом состояния 404.

{
  "myapp": {
    "read": {
      "application": "myapp",
      "name": "read",
      "actions": [
        "data:read/*",
        "action:login"
      ],
      "metadata": {
        "description": "Read access to myapp"
      }
    }
  }
}

Чтобы получить все привилегии для приложения, опустите имя привилегии:

resp = client.security.get_privileges(
    application="myapp",
)
print(resp)
const response = await client.security.getPrivileges({
  application: "myapp",
});
console.log(response);
GET /_security/privilege/myapp/

Чтобы получить все привилегии, опустите имена приложения и привилегии:

resp = client.security.get_privileges()
print(resp)
const response = await client.security.getPrivileges();
console.log(response);
GET /_security/privilege/

© 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/8.17/security-api-get-privileges.html

Spec-Zone.ru

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