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.
A pesquisa com OpenSearch suporta segurança no nível do documento, ativada pelo plug-in de Segurança OpenSearch. A segurança no nível do 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 no nível de documento no Search with OpenSearch.
-
O modo de segurança do cluster deve ser definido como imposição. Para obter mais informações sobre como verificar essa definição e atualizar, se necessário, consulte Verify Security Mode e Setting the Security Mode to Enforcing.
-
A versão OpenSearch do cluster deve ser 2.3.
Usar segurança no nível do documento
Para usar a segurança no nível do documento em Pesquisar com OpenSearch, especifique um padrão de índice e uma consulta OpenSearch para uma atribuição. Use OpenSearch DSL de consulta para a consulta.
- Faça log-in nos Painéis de Controle OpenSearch do cluster e selecione Segurança.
- Escolha Funções e, em seguida, crie uma nova função ou edite uma função existente.
- Para Índice, especifique um padrão de índice.
- 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
genresincluiComedy.
Configurando a Segurança no Nível do Documento usando a API REST
Use a API de Atribuições para configurar a segurança no nível do documento, conforme mostrado no exemplo a seguir da 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.