Segurança em Nível de Documento na Pesquisa com OpenSearch

Saiba mais sobre como usar a segurança em nível de documento com o Search with OpenSearch.

O OCI Search com OpenSearch suporta segurança no nível do documento, ativada pelo plug-in de Segurança OpenSearch. A segurança em nível de documento permite que você restrinja o acesso a documentos em um índice a uma função específica, com base em uma consulta especificada.

Se várias funções se aplicarem a um usuário, algumas com acesso mais restritivo, o acesso mais expansivo será aplicado.

Se a atribuição não tiver nada especificado para a segurança no nível do documento, ela terá acesso a todos os documentos nos índices aos quais a atribuição tem acesso, com base nas permissões de índice especificadas.

Pré-requisitos

A seguir estão os pré-requisitos para ativar a segurança em nível de documento no Search with OpenSearch.

Usar segurança em nível de documento

Para usar a segurança em nível de documento na Pesquisa com OpenSearch, especifique um padrão de índice e uma consulta OpenSearch para uma atribuição. Use OpenSearch DSL de consulta para a consulta.

Configurando a Segurança em Nível de Documento nos Painéis OpenSearch
  1. Faça log-in nos Painéis de Controle OpenSearch do cluster e selecione Segurança.

  2. Escolha Funções e, em seguida, crie uma nova função ou edite uma função existente.

  3. Para Índice, especifique um padrão de índice.

  4. Para Segurança em nível de documento, especifique uma consulta OpenSearch.

    Por exemplo, a seguinte consulta de amostra incluída na documentação OpenSearch Document Level Security:

    {
       "bool": {
          "must": {
             "match": {
                "genres": "Comedy"
             }
          }
       }
    }

    restringe o acesso da função aos documentos em que o campo genres inclui Comedy.

Configurando a Segurança em Nível de Documento usando a API REST

Use a API de Atribuições para configurar a segurança no nível do documento, conforme demonstrado no exemplo a seguir na documentação OpenSearch Document Level Security:

PUT _plugins/_security/api/roles/comedy_data
{
  "cluster_permissions": [
    "*"
  ],
  "index_permissions": [{
    "index_patterns": [
      "pub*"
    ],
    "dls": "{\"bool\":{\"must\":{\"match\":{\"genres\":\"Comedy\"}}}}",
    "allowed_actions": [
      "read"
    ]
  }]
}

Este exemplo mostra como configurar uma atribuição, comedy_data, que permite acesso a qualquer documento em que o gênero seja "Comedy", em qualquer índice.