A versão 7.0 do Couchbase Server apresenta algumas mudanças importantes como parte do sistema de autorização de controle de acesso baseado em função (RBAC). O Couchbase Server permitiu controles de acesso refinados à plataforma com RBAC para administradores desde a versão 4.5 e todos os usuários desde a versão 5.0. No postagem anterior do blogNa postagem anterior, descrevi como os DBAs podem controlar algumas funções para restringir o acesso a um escopo ou nível de coleção. Nesta postagem, gostaria de mostrar a você algumas das alterações de função e funções adicionais que foram criadas.
Aqui está um resumo das alterações:
-
- O Security Admin foi substituído pelo Security Admin do usuário local ou externo
- Duas novas funções de administrador pleno: Administrador completo de eventos e Administrador completo de backup
- Oito novas funções para funções definidas pelo usuário de consultas SQL++
- Duas funções operacionais adicionais: Gerenciar escopos e Leitor de estatísticas externas
Administrador de segurança
Recebemos alguns comentários de clientes de que o RBAC não definia a função de administrador de segurança existente de forma suficientemente restrita. Decidimos que poderíamos melhorar a segurança para permitir que os administradores escolhessem se um administrador de segurança poderia gerenciar usuários locais, usuários externos ou ambos. Com o Couchbase Server 7.0, dividimos a função de Security Admin em duas funções distintas: Administrador de segurança de usuário local e Administrador de segurança de usuário externo.
Ao fazer upgrade de um cluster de uma versão anterior em que um usuário tem a função Security Admin, sua definição de função será alterada para herdar as duas novas funções em vez da função Security Admin herdada.
O novo Segurança do usuário local Admin A função permite que um administrador adicione/remova/modifique usuários definidos e armazenados localmente no cluster. Essa função não permite que o administrador altere as configurações de autenticação externa.
O Segurança do usuário externo Admin A função permite que um administrador adicione/remova/modifique usuários definidos e gerenciados externamente para o cluster em um sistema como o LDAP ou o Active Directory. Além disso, essa função permite modificações das configurações de autenticação externa.
Um administrador que possua o Local User Security Admin e o External User Security Admin pode gerenciar todos os usuários não administradores no cluster.
Novas funções de administrador completo
Criamos duas novas funções no Couchbase Server 7.0 para facilitar as operações em todo o cluster para Eventing e Backups: Eventing Full Admin e Backup Full Admin.
Administração completa de eventos é uma função de administrador avançada. Ela tem a maioria dos mesmos recursos de um administrador pleno, mas não permite a modificação das configurações de segurança, como adicionar ou remover usuários ou modificar o XDCR.
Backup Full Admin também é uma função de administrador avançada. Ela também tem a maioria dos mesmos recursos de um administrador pleno, mas também não permite a modificação das configurações de segurança. Os administradores que desejarem fazer backup dos dados de eventos precisarão ter essa função ou a função Full Admin.
Novas funções de funções definidas pelo usuário de consultas SQL++
Oito novas funções foram adicionadas ao Couchbase Server 7.0 para gerenciar ou executar o novo SQL++ Funções definidas pelo usuário (UDFs N1QL). Elas se aplicam tanto em nível de escopo quanto em nível global e em nível interno e externo para as funções:
-
- Gerenciar funções globais
- Executar funções globais
- Gerenciar funções de escopo
- Executar funções de escopo
- Gerenciar funções externas globais
- Executar funções externas globais
- Gerenciar o escopo das funções externas
- Executar funções externas do escopo
Uma função Global é criada dentro de um namespace no mesmo nível dos buckets dentro do namespace, enquanto uma função Scope é criada dentro de um escopo, no mesmo nível das coleções dentro do escopo. Ao criar uma função definida pelo usuário, o contexto de consulta atual determina se ela é criada como uma função Global ou uma função de Escopo. Você também pode incluir o caminho completo para a função ao especificar o nome da função.
Uma função inline usa a linguagem SQL++ para definir os recursos da função, enquanto uma função externa usa uma linguagem externa, como JavaScript.
Aqui estão alguns exemplos:
|
1 2 |
CONCESSÃO query_manage_global_functions PARA usuário1; CONCESSÃO query_execute_external_functions ON padrão:teste.escopo1 PARA usuário1; |
Ao fornecer a granularidade de gerenciar ou executar as funções do SQL++ e permitir apenas escopos e linguagens de execução específicos, ele permite que os administradores forneçam apenas a quantidade mínima de privilégios, no que é conhecido como princípio do menor privilégio (PoLP).
Novas funções operacionais
Por último, mas não menos importante, adicionamos duas funções do tipo operacional. A função Gerenciar escopos e a função Leitor de estatísticas externas.
A função Gerenciar escopos permite que um administrador de cluster ou de bucket delegue a adição/remoção de escopos e coleções em um nível de bucket ou a adição/remoção de coleções em um nível de escopo, dependendo do parâmetro fornecido ao atribuir a função a um usuário.
A função Leitor de estatísticas externas permite o acesso aos pontos de extremidade de estatísticas que fornecem dados armazenados no armazenamento de estatísticas do sistema Prometheus incorporado.
Conclusão
Neste artigo, mostrei a você quais novas funções RBAC foram adicionadas ao Couchbase Server 7.0 e para que elas são usadas.
Se a segurança for importante para você, recomendo a leitura de algumas postagens adicionais no blog sobre nossos recursos RBAC que ajudam a manter seus dados do Couchbase protegidos.
- Autenticação e autorização com RBAC
- Autenticação e autorização com RBAC (Parte 2)
- Apresentando a segurança de controle de acesso com base em função (RBAC) para coleções no Couchbase 7.0
- Experimente esses recursos mais recentes com nossa avaliação gratuita de 30 dias hospedada na nuvem em Couchbase Capella
- Leia mais sobre o Lançamento do Couchbase 7 e seus novos recursos
- Saiba mais sobre Escopos e coleções