Para controlar o acesso a clusters, índices, campos ou outras operações, use o recurso de controle de acesso baseado em função (RBAC) no Elasticsearch X-Pack. O RBAC permite conceder privilégios específicos a funções e atribuí-las aos usuários. Embora o Alibaba Cloud Elasticsearch inclua várias funções integradas, você também pode criar funções personalizadas para um controle mais granular. Este tópico explica como configurar funções comuns para gerenciar permissões de usuário.
Contexto
O Alibaba Cloud Elasticsearch oferece suporte ao mecanismo RBAC do X-Pack. Para obter mais informações, consulte User authorization.
O Alibaba Cloud Elasticsearch oferece suporte a diversos recursos de autenticação de segurança. Para obter mais informações, consulte Authentication and authorization in Elasticsearch.
Procedimento
Estas instruções aplicam-se ao Alibaba Cloud Elasticsearch V6.7 e V7.x. As etapas para outras versões podem variar. Para obter as instruções mais precisas, consulte a interface do usuário no console.
-
Crie uma função.
-
Faça logon no console do Kibana.
Para obter mais informações, consulte Log on to the Kibana console.
-
Acesse a página de gerenciamento.
V6.7: No painel de navegação à esquerda, clique em Management.
V7.x: No canto superior esquerdo da página, clique no ícone
e selecione Management > Stack Management.
Na seção Security, clique em Roles.
-
Clique em Create role e configure os parâmetros.

Parâmetro
Descrição
Role Name
Nome da função.
Cluster privileges
Define privilégios para operações de cluster, como visualizar a integridade e as configurações do cluster ou criar um snapshot. Para obter mais informações, consulte Cluster privileges.
Run As privileges
Usuário que assume esta função. Campo opcional. Se nenhum usuário for selecionado aqui, será possível atribuir a função durante a criação do usuário. Para obter mais informações, consulte Criar um usuário.
Index privileges
Define privilégios para operações de índice, como conceder acesso de
reada todos os campos de todos os índices definindo o nome do índice como. Os nomes dos índices aceitam caracteres curinga () e expressões regulares. Para obter mais informações, consulte Indices privileges. Configure os seguintes parâmetros:-
Indices: Selecione um padrão de índice (Index Pattern), como
heartbeat-*.NotaSe não houver um padrão de índice, acesse a página Management, clique em Index Pattern em Kibana e siga as instruções na tela para criar um.
-
Privileges: Privilégios a serem atribuídos à função.
-
Granted fields (optional): Campos aos quais os privilégios serão concedidos.
Kibana privileges
Define privilégios para operações do Kibana.
ImportanteVersões do Kibana anteriores à 7.0 oferecem suporte apenas a Base privileges, que concedem acesso a todos os espaços por padrão. O Kibana 7.0 e versões posteriores oferecem suporte a Feature privileges além dos privilégios básicos. Os Feature privileges concedem acesso a recursos específicos do Kibana e exigem a especificação de um espaço do Kibana.
Ao criar uma função, é necessário atribuir privilégios. Este tópico apresenta exemplos das seguintes configurações de função:
-
Conceder a um usuário padrão privilégios de somente leitura em um índice específico. Esse usuário poderá acessar apenas o índice indicado.
Para obter mais informações, consulte Configurar privilégios de somente leitura de índice.
-
Permitir que um usuário padrão visualize todos ou alguns painéis.
Para obter mais informações, consulte Configurar privilégios de painel.
-
Conceder a um usuário padrão privilégios de leitura e gravação em alguns índices e privilégios de somente leitura em todos os clusters. Por exemplo, o usuário pode visualizar a integridade do cluster, snapshots e configurações, além de gravar dados e atualizar mapeamentos de um índice.
Para obter mais informações, consulte Configurar privilégios de leitura/gravação de índice e somente leitura de cluster.
-
Conceder a um usuário padrão privilégios de somente leitura para o Kibana Discover e um índice. Esse usuário pode acessar a página Discover no console do Kibana para visualizar os dados desse índice.
Para obter mais informações, consulte Configurar privilégios de somente leitura do Discover para dados de índice.
-
Conceder a um usuário padrão privilégios para criar, ler, atualizar e excluir documentos, criar e excluir índices e modificar configurações de índice, sem conceder acesso ao console do Kibana.
Para obter mais informações, consulte Configurar permissões para gerenciar índices e documentos sem acesso ao Kibana.
-
Clique em Create role.
-
-
Crie um usuário e atribua funções para conceder permissões.
-
Acesse a página de gerenciamento.
V6.7: No painel de navegação à esquerda, clique em Management.
V7.x: No canto superior esquerdo da página, clique no ícone
e selecione Management > Stack Management.
Na seção Security, clique em Users.
-
Clique em Create new user e configure os parâmetros.

Parâmetro
Descrição
Username
Nome de usuário para fazer logon no console do Kibana.
Password
Senha para o usuário fazer logon no console do Kibana.
Confirm Password
Deve corresponder à Password.
Full name
Nome completo do usuário.
Email address
Endereço de e-mail do usuário.
Roles
Atribua funções ao usuário. É possível selecionar uma ou mais funções personalizadas ou integradas.
ImportanteMesmo que um usuário tenha sido especificado na seção
Run As privilegesao criar a função, ainda será necessário atribuir essa função ao usuário aqui. Caso contrário, o usuário não conseguirá fazer logon. Clique em Create user.
-
Faça logon no console do Kibana como o novo usuário e execute uma operação para verificar as permissões.
Configurar privilégios de somente leitura de índice
Caso de uso
Conceder a um usuário padrão privilégios de somente leitura para um índice específico. O usuário pode consultar dados do índice no console do Kibana, mas não consegue acessar APIs de nível de cluster.
Configuração da função

Tabela 1. Descrição dos privilégios
|
Tipo de privilégio |
Chave do privilégio |
Valor do privilégio |
Descrição |
|
Index privileges |
indices |
kibana_sample_data_logs |
Nome do índice. É possível especificar o nome completo, um alias, um caractere curinga ou uma expressão regular. Para obter mais informações, consulte Indices Privileges. |
|
privileges |
|
Concede privilégios de somente leitura no índice. Esses privilégios incluem |
|
|
Granted fields (optional) |
|
Campos do índice. * indica todos os campos. |
|
|
Kibana privileges |
privileges |
|
Concede o privilégio de somente leitura do Kibana a todos os espaços. O valor padrão é none, o que significa que nenhum espaço tem privilégio para acessar o Kibana. Importante
Versões do Kibana anteriores à 7.0 oferecem suporte apenas a Base privileges, que concedem acesso a todos os espaços por padrão. O Kibana 7.0 e versões posteriores oferecem suporte a Feature privileges além dos privilégios básicos. Os Feature privileges concedem acesso a recursos específicos do Kibana e exigem a especificação de um espaço do Kibana. |
Verificação
-
Faça logon no console do Kibana como o novo usuário e execute um comando de leitura. O comando deve retornar um resultado normal.
GET /kibana_sample_data_logs/_search -
Execute um comando de gravação. Um erro de autorização será retornado.
POST /kibana_sample_data_logs/_doc/1 { "productName": "testpro", "annual_rate": "3.22%", "describe": "testpro" }
Configurar privilégios de painel
Caso de uso
Conceder a um usuário padrão privilégios de somente leitura para um índice específico e permitir que ele visualize os dados do painel desse índice.
Configuração da função
Ao criar um usuário, atribua as funções read-index e kibana_dashboard_only_user ao usuário.
read-index: Exemplo de função personalizada que deve ser criada. Esta função possui privilégios de somente leitura para um índice especificado.
-
kibana_dashboard_only_user: Função integrada do Kibana que possui o privilégio de visualizar dados de painel para índices especificados.
NotaNo Kibana 7.0 e versões posteriores, a função kibana_dashboard_only_user foi descontinuada. Para visualizar o painel de um índice específico, basta configurar privilégios de somente leitura para esse índice. Para obter mais informações, consulte Configurar privilégios de somente leitura para um índice.
A função kibana_dashboard_only_user pode ser usada com funções personalizadas em muitos cenários. Se for necessário atribuir apenas o recurso Dashboards only roles a uma função personalizada, na área Kibana da página Management, clique em , localize a seção Dashboard e vincule uma função personalizada (o padrão é a função kibana_dashboard_only_user).
Verificação
Faça logon no console do Kibana como o novo usuário. O painel do índice correspondente estará visível.
Configurar leitura/gravação de índice e somente leitura de cluster
Caso de uso
Concede a um usuário privilégios de leitura, gravação e exclusão para índices específicos, além de privilégios de somente leitura para o cluster e o Kibana.
Configuração da função

Tabela 2. Descrição dos privilégios
|
Tipo de privilégio |
Chave do privilégio |
Valor do privilégio |
Descrição |
|
Cluster privileges |
Cluster |
|
Concede privilégios de somente leitura no cluster. Por exemplo, visualizar integridade do cluster, status, hot threads, informações de nó e tarefas bloqueadas. |
|
Index privileges |
indices |
|
Nome do índice. É possível especificar o nome completo, um alias, um caractere curinga ou uma expressão regular. Para obter mais informações, consulte roles-indices-priv. |
|
privileges |
|
Concede privilégios de somente leitura no índice. Esses privilégios incluem |
|
|
|
Privilégio para criar um índice. Se um alias de índice for definido durante a criação do índice, também será necessário conceder o privilégio Importante
O alias do índice também deve satisfazer as regras de correspondência definidas em indices. |
||
|
|
Concede acesso de somente leitura aos metadados do índice, como mapeamentos e configurações. |
||
|
|
Privilégio para executar todas as operações de gravação em documentos, incluindo |
||
|
|
Privilégio para monitorar todas as operações, incluindo |
||
|
|
Privilégio para excluir documentos do índice. |
||
|
|
Privilégio para excluir um índice. |
||
|
granted fields |
|
Campos do índice a autorizar. * representa todos os campos do índice. |
|
|
Kibana privileges |
privileges |
|
Concede privilégio de somente leitura do Kibana a todos os espaços. O valor padrão é none, o que significa que nenhum espaço tem privilégio para acessar o Kibana. Importante
Versões do Kibana anteriores à 7.0 oferecem suporte apenas a Base privileges, que concedem acesso a todos os espaços por padrão. O Kibana 7.0 e versões posteriores oferecem suporte a Feature privileges além dos privilégios básicos. Os Feature privileges concedem acesso a recursos específicos do Kibana e exigem a especificação de um espaço do Kibana. |
Verificação
Faça logon no console do Kibana como o usuário padrão. Os comandos a seguir devem ser executados com sucesso.
-
Visualize informações detalhadas sobre os índices no cluster.
GET /_cat/indices?v -
Verifique o status do cluster.
GET /_cluster/stats -
Consulte dados no índice
library_v1.GET /library_v1/_search -
Consulte dados no índice
library_v2.GET /library_v2/_search -
Grave dados no índice
heartbeat-2023.01.01usando o método POST.POST /heartbeat-2023.01.01/_doc/2 { "productName": "testpro", "annual_rate": "3.22%", "describe": "testpro" } -
Grave dados no índice
library_v3usando o método PUT.PUT /library_v3/_doc/1 { "productName": "testpro", "annual_rate": "3.22%", "describe": "testpro" } -
Exclua o índice
library_v1.DELETE library_v1
Configurar privilégios de somente leitura do Discover
Caso de uso
Conceder a um usuário padrão privilégios de somente leitura para o Kibana Discover e um índice. Esse usuário pode acessar a página Discover no console do Kibana para visualizar os dados desse índice.
Configuração da função

Tabela 3. Descrição dos privilégios
|
Tipo de privilégio |
Chave do privilégio |
Valor do privilégio |
Descrição |
|
Cluster privileges |
Privileges |
|
Concede privilégios de somente leitura em todos os clusters, como visualizar integridade e status do cluster, hot threads, informações de nó, estatísticas de nó e cluster e tarefas pendentes do cluster. |
|
Index privileges |
Indices |
kibana_sample_data_ecommerce |
Nome do índice. É possível especificar o nome completo, um alias, um caractere curinga ou uma expressão regular. Para obter mais informações, consulte Indices Privileges. |
|
Privileges |
|
Concede privilégios de somente leitura no índice. Esses privilégios incluem |
|
|
Granted fields (optional) |
|
Campo do índice. O |
|
|
Kibana privileges |
Privileges |
|
Concede privilégios de somente leitura para todos os espaços do Kibana. O valor padrão é Importante
Versões do Kibana anteriores à 7.0 oferecem suporte apenas a Base privileges, que concedem acesso a todos os espaços por padrão. O Kibana 7.0 e versões posteriores oferecem suporte a Feature privileges além dos privilégios básicos. Os Feature privileges concedem acesso a recursos específicos do Kibana, como a página Discover, e exigem a especificação de um espaço do Kibana. |
Verificação
Faça logon no console do Kibana como o novo usuário. Os dados do índice especificado estarão visíveis na página Discover.
Gerenciar índices e documentos sem acesso ao Kibana
Caso de uso
Concede a um usuário privilégios para gerenciar índices e documentos via API, sem acesso ao console do Kibana.
Configuração da função

Tabela 4. Descrição dos privilégios
|
Tipo de privilégio |
Chave do privilégio |
Valor do privilégio |
Descrição |
|
Index privileges |
Indices |
|
Nome do índice. É possível especificar o nome completo, um alias, um caractere curinga ou uma expressão regular. Para obter mais informações, consulte Indices Privileges. |
|
Privileges |
|
Privilégio para criar um índice. Se a solicitação para criar um índice contiver um alias a ser adicionado ao índice, também será necessário conceder o privilégio |
|
|
|
Privilégio para excluir um índice. |
||
|
|
Privilégio para indexar e atualizar documentos, bem como atualizar mapeamentos de índice. |
||
|
|
Privilégio para excluir documentos. |
||
|
|
Concede privilégios de somente leitura no índice. Esses privilégios incluem |
||
|
|
Concede privilégios para operações de gerenciamento de índice, como gerenciar aliases, configurações, mapeamentos e modelos. |
||
|
Granted fields (optional) |
|
Campos do índice. |
|
|
Kibana privileges |
Privileges |
|
Defina como Importante
Versões do Kibana anteriores à 7.0 oferecem suporte apenas a Base privileges, que concedem acesso a todos os espaços por padrão. O Kibana 7.0 e versões posteriores oferecem suporte a Feature privileges além dos privilégios básicos. Os Feature privileges concedem acesso a recursos específicos do Kibana e exigem a especificação de um espaço do Kibana. |
Verificação
Use cURL para criar e, em seguida, excluir um índice.

Modifique a configuração do índice. Este exemplo define os dados do índice como dados frios.

Execute operações CRUD em documentos.

-
Faça logon no console do Kibana como o usuário.
Uma mensagem indicará que o usuário não possui os privilégios necessários.
