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

API массового удаления ролей

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

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

Массово удаляет роли в родном домене.

Запрос

DELETE /_security/role/

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

  • Для использования данного API необходимо обладать правом manage_security кластера.

Описание

API управления ролями, как правило, предпочтительнее, чем использование управления ролями с помощью файлов. API массового удаления ролей не может удалить роли, определенные в файлах ролей.

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

refresh
Необязательная настройка политики обновления для запроса записи. По умолчанию — Немедленно.

Тело запроса

В теле запроса DELETE можно указать следующие параметры, относящиеся к удалению набора ролей:

names
(список) Список имен ролей для удаления.

Примеры

В следующем примере удаляются роли my_admin_role и my_user_role:

resp = client.security.bulk_delete_role(
    names=[
        "my_admin_role",
        "my_user_role"
    ],
)
print(resp)
const response = await client.security.bulkDeleteRole({
  names: ["my_admin_role", "my_user_role"],
});
console.log(response);
DELETE /_security/role
{
    "names": ["my_admin_role", "my_user_role"]
}

При успешном удалении ролей запрос возвращает:

{
    "deleted": [
        "my_admin_role",
        "my_user_role"
    ]
}

Если роль не найдена, роли, не найденные, сгруппированы в not_found:

resp = client.security.bulk_delete_role(
    names=[
        "my_admin_role",
        "not_an_existing_role"
    ],
)
print(resp)
const response = await client.security.bulkDeleteRole({
  names: ["my_admin_role", "not_an_existing_role"],
});
console.log(response);
DELETE /_security/role
{
    "names": ["my_admin_role", "not_an_existing_role"]
}
{
    "deleted": [
        "my_admin_role"
    ],
    "not_found": [
        "not_an_existing_role"
    ]
}

Если запрос завершается ошибкой или является недопустимым, ошибки сгруппированы в errors:

resp = client.security.bulk_delete_role(
    names=[
        "my_admin_role",
        "superuser"
    ],
)
print(resp)
const response = await client.security.bulkDeleteRole({
  names: ["my_admin_role", "superuser"],
});
console.log(response);
DELETE /_security/role
{
    "names": ["my_admin_role", "superuser"]
}
{
    "deleted": [
        "my_admin_role"
    ],
    "errors": {
        "count": 1,
        "details": {
            "superuser": {
                "type": "illegal_argument_exception",
                "reason": "role [superuser] is reserved and cannot be deleted"
            }
        }
    }
}

© 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-bulk-delete-role.html

Spec-Zone.ru

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