AWS OpenSearch предоставляет пользователю панель управления доступом только для чтения
Я использую aws OpenSearch для просмотра анализа данных в реальном времени.
Я использую следующие роли, чтобы предоставить моему пользователю доступ только для чтения к панели управления, как указано здесь.
- kibana_user
- kibana_read_only
- read_only_index
Но все же пользователь может редактировать панель управления из-за некоторых разрешений в роли «kibana_user». поэтому я попытался создать дублирующую роль, используя встроенные функции OpenSearch, и удалил разрешение на управление и удаление из дублированной роли и назначил эту роль моему пользователю. Но на этот раз пользователь не может просматривать информационную панель и список информационных панелей, даже если я не удаляю разрешение на управление и удаление , я получаю следующую ошибку в браузере
нет разрешений для [индексы: данные / чтение / поиск] и пользователя [name =test-user-1, backend_roles=[], requiredTenant=]: security_exception
Я пробовал дать "index: data / read / search" это разрешение роли и многое другое, но это не сработало. любые решения
3 ответа
Я использовал:
kibana_all_read
read
Кажется, это работает, они могут перевести панель инструментов в режим редактирования, но не могут ее сохранить.
Стандартный подход для пользователя информационной панели только для чтения выглядит следующим образом:
- Создайте пользовательскую роль для этого типа пользователя: .
- Добавлять
cluster_composite_ops_ro
разрешение кластера. - Добавьте любые нужные шаблоны индексов, чтобы ограничить доступ:
logs.*
. - Добавьте привилегии индекса для доступа на чтение: ,
indices:admin/resolve/index
. - Добавьте шаблоны арендаторов:
My-Tenant
- Добавьте разрешения арендатора:
read
,write
- Сопоставьте следующие роли нужным пользователям:
my-readonly-role
а такжеopensearch_dashboards_read_only
Примечание. Это было проверено на OpenSearch версии 1.1.
Вот блок API, который представляет вышеуказанные шаги:
{
"cluster_permissions": ["cluster_composite_ops_ro"],
"index_permissions": [
{
"index_patterns": ["logs.*"],
"dls": "",
"fls": [],
"masked_fields": [],
"allowed_actions": ["read", "indices:admin/resolve/index"]
}
],
"tenant_permissions": [
{
"tenant_patterns": ["My-Tenant"],
"allowed_actions": ["read", "write"]
}
]
}