Seguridad de Nivel de Documento en Búsqueda con OpenSearch
Obtenga información sobre el uso de la seguridad de nivel de documento con Search con OpenSearch.
La búsqueda con OpenSearch soporta la seguridad de nivel de documento, activada por el plugin de seguridad OpenSearch. La seguridad a nivel de documento permite restringir el acceso a los documentos de un índice a un rol específico, según una consulta especificada.
Si se aplican varios roles a un usuario, algunos con acceso más restrictivo, se aplicará el acceso más amplio.
Si el rol no tiene nada especificado para la seguridad de nivel de documento, dicho rol tendrá acceso a todos los documentos dentro de los índices a los que tiene acceso el rol, según los permisos de índice especificados.
Requisitos
Los siguientes son requisitos para activar la seguridad de nivel de documento en Search con OpenSearch.
-
El modo de seguridad del cluster se debe configurar para que se aplique. Para obtener más información sobre cómo comprobar esta configuración y actualizarla si es necesario, consulte Verify Security Mode y Setting the Security Mode to Enforcing.
-
La versión OpenSearch para el cluster debe ser 2.3.
Uso de la seguridad a nivel de documento
Para utilizar la seguridad de nivel de documento en Search con OpenSearch, especifique un patrón de índice y una consulta OpenSearch para un rol. Utilice OpenSearch query DSL para la consulta.
- Conéctese a los paneles de control OpenSearch del cluster y seleccione Seguridad.
- Seleccione Roles y, a continuación, cree un nuevo rol o edite un rol existente.
- Para Índice, especifique un patrón de índice.
- Para Seguridad de nivel de documento, especifique una consulta OpenSearch.
Por ejemplo, la siguiente consulta de ejemplo incluida en la documentación de OpenSearch Seguridad de nivel de documento:
{ "bool": { "must": { "match": { "genres": "Comedy" } } } }restringe el acceso del rol a los documentos en los que el campo
genresincluyeComedy.
Configuración de la seguridad de nivel de documento mediante la API de REST
Utilice la API de roles para configurar la seguridad a nivel de documento, como se muestra en el siguiente ejemplo de la documentación de OpenSearch Seguridad a nivel de documento:
PUT _plugins/_security/api/roles/comedy_data
{
"cluster_permissions": [
"*"
],
"index_permissions": [{
"index_patterns": [
"pub*"
],
"dls": "{\"bool\":{\"must\":{\"match\":{\"genres\":\"Comedy\"}}}}",
"allowed_actions": [
"read"
]
}]
}
En este ejemplo se muestra cómo configurar un rol, comedy_data, que permita el acceso a cualquier documento en el que el género sea "Comedia", en cualquier índice.