Ao longo dos anos, aprendi a usar o acesso com "privilégio mínimo" sempre que possível. Isso se aplica especialmente aos administradores - eles gerenciam componentes importantes da infraestrutura de TI, como bancos de dados NoSQL, e têm a liberdade de usar
todos os privilégios que o sistema tem a oferecer.
Se você já usou o Couchbase por tempo suficiente, a situação era -
- O administrador completo tinha permissão total para fazer qualquer coisa nos recursos do cluster - buckets, visualizações, XDCR.
- Havia apenas duas funções de administrador prontas para uso (do tipo tudo ou nada): administrador completo e administrador somente leitura.
Isso significava que, se você precisasse que alguém apenas configurasse o XDCR, ou talvez alterasse uma configuração simples de bucket, basicamente precisaria fornecer a essa pessoa credenciais de administrador completas. Esse era o problema central!
O 4.5 foi um lançamento empolgante para nós do ponto de vista da segurança, com a introdução do RBAC (Role Based Access Control, controle de acesso baseado em função) para administradores - uma maneira simples de definir e impor qual administrador tem acesso a quais recursos. Com o RBAC
para administradores, agora você pode separar as funções de diferentes administradores para fins de conformidade e para atender às normas internas de segurança organizacional.
Então, quais são os requisitos que o RBAC realmente atende?
O RBAC é importante para ajudá-lo a responder às seguintes perguntas sobre o seu banco de dados NoSQL:
- Posso separar as funções dos meus administradores do couchbase?
- Quais administradores têm acesso a quais recursos?
- Como faço para centralizar a autenticação dos administradores em meu ambiente?
Então, como o RBAC atende aos requisitos?
A maneira mais fácil de entender o RBAC é por meio de um exemplo.
Digamos que você tenha uma equipe de 3 a 4 administradores responsáveis pelo Couchbase: Adam, Mary, Don e Kirk. Espera-se que você não queira que todos eles tenham privilégios totais de administrador, caso contrário, esse recurso não será útil para você. Além disso, em um ambiente de desenvolvimento-teste
talvez você queira permitir que os administradores tenham controle total sobre o cluster para que possam explorar as configurações do Couchbase livremente, sem restrições, e ajustar as configurações do cluster para se prepararem para a produção.
Ao se aproximar da implementação de produção, você precisará começar a pensar em bloquear o cluster (ou seja, pensar em como você pode separar as funções de administrador e descobrir quais administradores precisarão acessar quais recursos). Na maioria dos
implementações corporativas, a centralização da autenticação de usuários por meio do LDAP é bastante comum na produção.
A primeira etapa para configurar o RBAC é criar seus usuários administrativos no LDAP. Se você já tiver o LDAP configurado em sua empresa, deverá primeiro configurar Couchbase para usar LDAP.
Neste exemplo, são necessários 4 usuários: Adam, Mary, Don, Kirk e uma conta de usuário para você.
|
Usuário |
Título |
Descrição do cargo |
Antes de 4,5 |
Em 4.5 |
|
Você mesmo |
Gerente de equipe de administração do Couchbase |
Controle total sobre o cluster |
Administração completa |
? |
|
Adão |
Administrador sênior do Couchbase |
Controle total sobre o cluster sem privilégios para controlar as configurações de segurança |
Administração completa |
? |
|
Maria |
Administrador da equipe de aplicativos |
As equipes de aplicativos chamam a Mary quando as configurações de um bucket de aplicativo precisam ser editadas |
Administração completa |
? |
|
Don |
Consultor de HA |
Pessoa-chave para estabelecer o XDCR entre os clusters |
Administração completa |
?
|
|
Kirk |
Consultor da equipe de aplicativos |
Pessoa-chave para a definição e implementação de visualizações para um aplicativo |
Administração completa |
? |
Atribuição de permissões a administradores por meio da associação de funções
Em seguida, você deverá descobrir o nível de permissão a ser concedido aos administradores com base em suas funções. O Couchbase fornece seis conjuntos distintos de permissões agrupadas por funções. Isso facilita a atribuição e a compreensão do acesso de administrador
sem precisar definir permissões individuais para cada uma das ações possíveis.
Esses seis conjuntos de permissões são:
Administrador pleno: Pode fazer qualquer coisa possível com os recursos do Couchbase. Este é o administrador completo com o qual você já está familiarizado. Esse é o nível mais alto de acesso que um usuário administrador pode ter. Então, o que um administrador pleno pode ver na interface do usuário? Basicamente
tudo, inclusive as configurações de segurança (na nova guia de segurança adicionada na versão 4.5)
Administrador do cluster: Semelhante ao Full Admin, mas com algumas restrições em relação ao controle de segurança. Essa opção é mais adequada para quando você deseja que um grupo de administradores execute o cluster, mas não pode conceder a eles privilégios de segurança, como a capacidade de ativar a auditoria
ativar/desativar, alterar associações de funções de administrador.
Então, o que um administrador de cluster pode ver na interface do usuário? Tudo, menos a guia de segurança.
Administrador do balde: Isso é mais adequado para quando você quer um grupo de administradores que respondem às solicitações das equipes de aplicativos para ajustar as configurações do bucket - redefinir a senha de um bucket, alterar as cotas de memória do bucket etc. Então, o que um administrador de bucket pode ver
na interface do usuário, na guia baldes de dados? Somente os buckets que você está administrando.
Para todas as outras guias (como nós de servidor), ela é somente leitura para administradores de bucket
Exibir Admin: Digamos que você tenha um administrador trabalhando com a equipe de aplicativos para configurar e implementar visualizações de aplicativos. Para isso, temos a função de administrador de visualização.
Administração de replicação: Isso é para os administradores responsáveis por sua estratégia XDCR. Esses são os administradores que configuram XDCR referências de clusters entre clusters,
iniciar/parar replicações.
E, finalmente, Somente leitura Admin: Olhe, mas não toque. Pode visualizar e inspecionar recursos, mas nada mais. Essa não é uma função nova na versão 4.5, mas é algo que você pode usar para sua
Lembre-se de que essas funções se sobrepõem, e o diagrama a seguir resume a hierarquia de funções

Colocando tudo junto
Portanto, agora que você conhece as funções, é preciso fazer com que Adam, Mary, Don e Kirk sejam membros das funções correspondentes.
|
Usuário |
Título |
Descrição do cargo |
Antes de 4,5 |
Em 4.5 |
|
Você mesmo |
Gerente de equipe de administração do Couchbase |
Controle total sobre o cluster |
Administração completa |
Administração completa |
|
Adão |
Administrador sênior do Couchbase |
Controle total sobre o cluster sem privilégios para controlar as configurações de segurança |
Administração completa |
Administrador do cluster |
|
Maria |
Administrador da equipe de aplicativos |
As equipes de aplicativos chamam a Mary quando as configurações de um bucket de aplicativo precisam ser editadas |
Administração completa |
Administrador do Bucket |
|
Don |
Consultor de HA |
Pessoa-chave para estabelecer o XDCR entre os clusters |
Administração completa |
Administrador de replicação |
|
Kirk |
Consultor da equipe de aplicativos |
Pessoa-chave para a definição e implementação de visualizações para um aplicativo |
Administração completa |
Exibir Admin |
No Couchbase 4.5, isso pode ser configurado por meio da interface do usuário, REST e CLI
Para resumir
O RBAC é importante para ajudá-lo a responder às seguintes perguntas sobre o seu banco de dados NoSQL:
- Posso separar as funções dos meus administradores do couchbase? Sim, agora com o RBAC para administradores na versão 4.5 você pode!
- Quais administradores têm acesso a quais recursos? É fácil e simples - depende da função
- Como faço para centralizar a autenticação dos administradores em meu ambiente? O LDAP precisa ser usado com o RBAC e geralmente é uma forma de centralizar a autenticação para os administradores.
Esperamos que esta visão geral do Controle de Acesso Baseado em Função tenha sido útil. Estamos muito entusiasmados com o RBAC e esperamos criar mais recursos de nível empresarial para o Couchbase Server no futuro. Boa sorte com o uso do RBAC para administradores em seu Couchbase
4,5 implantações!
Aguardamos seu feedback.