Bem-vindo a este guia abrangente sobre a integração de Couchbase com Capa de chave. No ambiente digital atual, a proteção de aplicativos e o gerenciamento eficiente de identidades são fundamentais. O SAML (Security Assertion Markup Language) e o Keycloak, uma ferramenta versátil de gerenciamento de identidade e acesso (IAM), formam juntos uma solução robusta para essa finalidade.
Neste artigo, exploraremos os meandros da configuração do Couchbase com um provedor de identidade (IdP) SAML. Usaremos o Keycloak em um ambiente Docker. Essa integração aumentará a segurança do seu Couchbase, simplificará o gerenciamento de usuários e oferecerá uma experiência de autenticação perfeita.
Este guia foi criado para fornecer uma abordagem passo a passo da integração do Keycloak com o banco de dados do Couchbase usando SAML, quer você esteja procurando expandir seu conhecimento em gerenciamento de identidade ou aprimorar sua configuração atual.
Ao final deste guia, você terá uma sólida compreensão de como o Couchbase e o SAML funcionam juntos e como você pode aproveitar essas tecnologias para reforçar a segurança e a eficiência do seu sistema. Embora este guia empregue principalmente o Keycloak como um provedor de identidade SAML, as etapas e os princípios delineados aqui devem permitir que você configure seu próprio provedor de identidade SAML de forma eficaz.
Pré-requisitos
Antes de mergulhar no processo de configuração, é importante garantir que você tenha os seguintes pré-requisitos prontos. Isso facilitará um processo de integração suave e eficiente:
-
- Configuração existente: O Couchbase deve estar instalado e funcionando. Este guia pressupõe que você já tenha instalado e configurado o Couchbase em seu sistema.
- Docker: O Docker precisa ser instalado em seu computador. O Docker será usado para executar o Keycloak em um ambiente de contêiner, fornecendo uma plataforma isolada e consistente para o Keycloak. Você pode pular a seção relevante se tiver o Keycloak instalado e em execução de outra forma.
- Conhecimento básico:
- Docker: A familiaridade com os comandos e conceitos do Docker é essencial, pois o Keycloak será implantado em um contêiner do Docker.
- Keycloak e SAML: Embora sejam fornecidas etapas detalhadas, será útil ter um conhecimento básico do Keycloak como ferramenta de IAM e do SAML como protocolo de autenticação.
- Requisitos do sistema: Certifique-se de que seu sistema atenda aos requisitos mínimos para executar o Docker e o Keycloak sem problemas. Isso inclui memória suficiente, potência da CPU e espaço em disco.
- Acessibilidade da rede: Certifique-se de que sua configuração de rede permita a comunicação entre o contêiner do Docker onde o Keycloak será executado e o sistema onde o Couchbase está hospedado.
Visão geral do Keycloak e SAML
Compreender as funções do Keycloak e do SAML no gerenciamento de identidade é fundamental para entender sua integração. Esta seção apresenta uma visão geral dos dois componentes e sua importância em nossa configuração.
O que é Keycloak
O Keycloak é uma solução de gerenciamento de identidade e acesso de código aberto voltada para aplicativos e serviços modernos. Ele oferece amplos recursos de segurança, incluindo autenticação e autorização de usuários.
Em nosso contexto, o Keycloak funciona como um provedor de identidade (IdP). Ele centraliza o mecanismo de login e o gerenciamento de usuários, oferecendo um ponto de acesso unificado para vários serviços e aplicativos.
SAML (Security Assertion Markup Language)
-
- Noções básicas de SAML: O SAML é um padrão aberto para a troca de dados de autenticação e autorização entre as partes, especificamente entre um IdP e um provedor de serviços (SP).
- Importância na autenticação: O SAML é amplamente usado para autenticação baseada na Web. Ele permite que os usuários façam login em vários aplicativos com um conjunto de credenciais gerenciadas pelo IdP, aprimorando a segurança e a experiência do usuário.
Benefícios da integração
-
- Segurança aprimorada: Ao integrar o SAML com o Keycloak, seu Couchbase se beneficia de um mecanismo de autenticação seguro e centralizado.
- Logon único (SSO): Os usuários podem aproveitar os recursos de SSO em diferentes aplicativos, reduzindo a necessidade de vários logins e senhas.
Etapa 1: Iniciando o Keycloak no Docker
Com o Docker já em execução no seu sistema, você pode iniciar facilmente o Keycloak em um contêiner do Docker. Esta seção fornece as etapas necessárias e um comando de exemplo para colocar o Keycloak em funcionamento sem problemas.
Preparação para a implementação do Keycloak
-
- Verifique se o Docker está em execução: Confirme se o Docker está ativo em seu sistema. Você pode fazer isso executando
informações da plataforma oudocker ps no terminal ou no prompt de comando, que deve retornar informações sobre a instalação do Docker e os contêineres em execução, respectivamente. - Disponibilidade da porta: O Keycloak normalmente é executado na porta 8080. Certifique-se de que essa porta esteja livre em seu sistema ou planeje mapeá-la para uma porta diferente ao executar o contêiner do Docker.
- Verifique se o Docker está em execução: Confirme se o Docker está ativo em seu sistema. Você pode fazer isso executando
Iniciando o contêiner Keycloak
Para iniciar um contêiner do Keycloak com as configurações padrão, use o seguinte comando:
|
1 |
doca executar -p 8080:8080 -e KEYCLOAK_ADMIN=administrador -e KEYCLOAK_ADMIN_PASSWORD=administrador cais.io/keycloak/keycloak:22.0.5 iniciar-dev |
Substituir administrador e administrador com seu nome de usuário e senha de administrador desejados. Isso configura uma conta de administrador no Keycloak quando o contêiner é iniciado.
Modo independente: Opcionalmente, você pode executar o contêiner no modo desanexado adicionando a opção -d flag. Isso executa o contêiner em segundo plano, permitindo que você continue a usar o terminal.
Acesso ao Keycloak
Quando o contêiner do Keycloak estiver em execução, você poderá acessar o console de administração do Keycloak navegando até https://localhost:8080/auth em seu navegador da Web. Faça login com as credenciais de administrador que você definiu.
Esteja ciente de que estamos executando esse contêiner no modo de desenvolvimento para fins de demonstração. Para obter orientação sobre como implantar o Keycloak em um ambiente de produção, recomendamos que consulte a documentação do Keycloak.
Etapa 2: Configurando o Keycloak como um provedor de identidade SAML Parte 1
A configuração do Keycloak como um provedor de identidade SAML envolve a configuração de um novo reino e de um cliente SAML dentro desse reino. Siga estas etapas detalhadas para garantir uma configuração adequada.
Acesso ao console de administração do Keycloak
-
- Abra um navegador da Web e navegue até https://localhost:8080/auth.
- Faça login com suas credenciais de administrador do Keycloak.
- Agora você deve ver o seguinte:

Criação de um novo reino
No Keycloak, um realm é um conceito fundamental que serve como um contêiner de nível superior para configurações e entidades como usuários, clientes e funções. A criação de um realm é essencial porque fornece um espaço isolado onde todos esses elementos podem ser gerenciados.
Cada realm atua como um domínio de identidade independente, permitindo manter conjuntos separados de usuários, credenciais, funções e clientes, o que é particularmente útil em cenários em que há vários departamentos, organizações ou ambientes. Portanto, a criação de um realm é a primeira etapa na configuração de uma solução de gerenciamento de identidade no Keycloak.
-
- No canto superior esquerdo, clique na lista suspensa "Master" e selecione "Criar reino“.
- Dê um nome ao seu novo reino (por exemplo,,
MyIdentityRealm) e clique em "Criar“.

Configuração de um cliente SAML
No Keycloak, um cliente representa um aplicativo que dependerá do Keycloak para autenticação e autorização. Criar um cliente é essencial, pois ele forma o vínculo entre a interface do usuário do Couchbase e o Keycloak, permitindo o gerenciamento seguro do acesso do usuário e das informações de identidade. Ao criar um cliente SAML no Keycloak, você permite que seu aplicativo autentique usuários por meio do Keycloak usando SAML.
-
- Em seu novo domínio, clique em "Clientes" no menu do lado esquerdo.
- Clique em "Criar cliente" e selecione "saml" como o Protocolo de Cliente.
- No Configurações gerais preencha os campos a seguir:
- ID do cliente: Digite a ID da entidade de seu provedor de serviços SAML (por exemplo,
couchbase-ui). - Nome: Forneça um nome para o cliente. (por exemplo,
Couchbase). - Descrição: Opcionalmente, adicione uma descrição.
- Cliente Próximo
- ID do cliente: Digite a ID da entidade de seu provedor de serviços SAML (por exemplo,

-
- No Configurações de login preencha os campos a seguir:
- URL inicial: Digite o URL do seu servidor Couchbase (por exemplo https://127.0.0.1:8091)
- URIs de redirecionamento válidos: Forneça o URI para o qual o IdP pode redirecionar (por exemplo https://127.0.0.1:8091/*)
- URIs de redirecionamento pós-logout válidos: Digite os URIs que você permite que o IdP redirecione após um evento de logout. (por exemplo. https://127.0.0.1:8091/*)
- Clique em Salvar para criar um novo cliente SAML
- No Configurações de login preencha os campos a seguir:

Atualmente, a configuração do cliente Keycloak está incompleta e será abordada posteriormente. Para concluir o processo de instalação, é essencial configurar primeiro o Couchbase.
Etapa 3: Configuração de SAML com o Couchbase Server
Depois que o Keycloak estiver configurado como um provedor de identidade SAML, a próxima etapa é integrá-lo ao Couchbase. Essa integração permite que o Couchbase autentique os usuários por meio do Keycloak usando SAML.
Entendendo a integração
-
- Papel do Keycloak: O Keycloak atua como provedor de identidade SAML (IdP), gerenciando identidades e credenciais de usuários.
- Função de seu Couchbase: Seu Couchbase funciona como um provedor de serviços SAML (SP), contando com o Keycloak para autenticação.
Preparação para a integração SAML
Para configurar o Couchbase como um provedor de serviços SAML (SP), a etapa inicial requer o download dos metadados do Keycloak.
O ponto de extremidade de metadados pode ser acessado navegando até a página de configurações do reino na área de administração do Keycloak.
- Abra a página de configurações: Colete as informações necessárias do Keycloak, como o URL de metadados do SAML IdP, abra o arquivo Configurações do reino página:

-
- Localizar os pontos de extremidadeSelecione a seção Endpoints: role para baixo até a seção Endpoints e abra os Metadados do provedor de identidade SAML 2.0 em uma nova janela. O URL deve ter a seguinte aparência
https://localhost:8080/auth/realms/{realm-name}/protocol/saml/descriptor. Em nosso caso, éhttps://localhost:8080/realms/MyIdentityRealm/protocol/saml/descriptor. O seu pode ser diferente, dependendo do nome do reino. Abra isso em uma nova guia e localize as principais informações no arquivo de metadados. - As informações do certificado podem ser encontradas na seção X509Certificate etiqueta.
- Localizar os pontos de extremidadeSelecione a seção Endpoints: role para baixo até a seção Endpoints e abra os Metadados do provedor de identidade SAML 2.0 em uma nova janela. O URL deve ter a seguinte aparência
|
1 2 3 |
<ds:X509Data> <ds:X509Certificate>MIICrTCCAZUCBgGM.....</ds:X509Certificate> </ds:X509Data> |
-
- Os vínculos de login e logout podem ser localizados no SingleSignOnService e SingleLogoutService tags. Elas devem se parecer com os seguintes trechos de código:
|
1 |
<md:SingleSignOnService Encadernação="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Localização="https://localhost:8080/realms/MyIdentityRealm/protocol/saml"/> |
|
1 |
<md:SingleLogoutService Encadernação="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Localização="https://localhost:8080/realms/MyIdentityRealm/protocol/saml"/> |
-
- O entityID pode ser localizado no Descritor de entidade e deve ter a seguinte aparência:
|
1 |
ID da entidade="https://localhost:8080/realms/MyIdentityRealm" |
Armazene esse arquivo de metadados em seu computador, pois ele é necessário para configurar o SAML no Couchbase. As associações de certificado, entityId, login e logout serão todas necessárias quando você criar a configuração SAML no Couchbase.
Configuração do Couchbase como um provedor de serviços
Depois de estabelecer o Keycloak como um provedor de identidade (iDP), a próxima etapa é configurar o servidor Couchbase para funcionar como um provedor de serviços (SP) SAML. Esta seção fornece instruções detalhadas sobre o processo inicial de instalação e configuração.
-
- Faça login na interface do usuário do servidor Couchbase: Faça login na interface de usuário administrativa do servidor Couchbase. É aqui que você definirá as configurações de SAML.
- Clique em Security (Segurança): Selecione segurança na navegação do lado esquerdo.

- Clique na guia SAML: na parte superior Localize a guia SAML e clique nela. Isso abrirá a página de configuração do SAML.

- Ativar a autenticação SAML: Há uma caixa de seleção abaixo do texto. Ative essa configuração.

Configuração de metadados
-
- ID da entidade SP: Defina o ID da entidade para o servidor Couchbase. Esse é um identificador exclusivo que você configurou no Keycloak como clientId e que será usado para reconhecer seu serviço. Use o mesmo ID de entidade que você usou na tela do Keycloak: "couchbase-ui"
- Detalhes da organização: Preencha os campos Org Name e Contact com suas informações.
- Tipo de URL de base do SP: Selecionar URL personalizado e use a URL em que seu serviço pode ser acessado pela Internet. Eu especificarei https://127.0.0.1:8091 pois estou executando o servidor Couchbase localmente.
- Assinar metadados: Certifique-se de que a opção "Assinar metadados usando certificados especificados abaixo" esteja ativada.

Gerenciamento de certificados
O provedor de serviços também exigirá uma chave privada e um certificado X.509, que é diferente do certificado do nó ou do cluster. Esse certificado específico será utilizado para ações relacionadas ao SAML.
Neste exemplo, usarei um certificado autoassinado.
|
1 |
openssl req -x509 -nova chave rsa:2048 -saída de chave chave.pem -fora certificado.pem -sha256 -dias 730 -nós -subj "/C=CO/ST=State/L=City/O=Company/OU=Unit/CN=127.0.0.1" |
Esse comando deve ter criado dois arquivos (cert.pem e key.pem).
-
- Carregar chave privada: Abra a seção Key and Certificate (Chave e certificado) e carregue sua chave privada.
- Carregar certificado: faça também o upload de seu certificado.
- Cadeia de certificados: Opcionalmente, se você precisar de uma cadeia de certificados, faça o upload dela também. No meu exemplo, não preciso de uma cadeia, pois meu certificado é autoassinado.

Configuração do provedor de identidade
-
- Metadados abertos: Abra a seção de metadados dessa configuração

- Configurar metadados: Altere a configuração Carregar metadados do IDP de URL para o arquivo
- Abrir arquivo: Localize o arquivo que você baixou do Keycloak em uma etapa anterior.
- Copiar o conteúdo: Selecione o arquivo inteiro e copie o conteúdo para a área de transferência
- Colar o XML: Volte para o servidor Couchbase e cole o xml na área de texto

- Habilitar Verificar par remoto: Alterne a opção Verify remote peer (Verificar par remoto) para garantir que esteja ativada

- Acesso único aberto: Na seção Configurações, abra o Single Sign-on
- Pós-vinculação: Certifique-se de que ambas as ligações estejam configuradas para usar Post

- Clique em Salvar: Clique em salvar para manter sua configuração.

- Anotar informações do ponto de extremidade: Lembre-se de anotar o URL de consumo do SP e o URL de logout do SP, pois eles serão necessários para a ETAPA 5.
- Metadados abertos: Abra a seção de metadados dessa configuração
Etapa 5: Configurando o Keycloak como um provedor de identidade SAML Parte 2
Recursos SAML
-
- Abrir o Keycloak: Volte para o console de administração do Keycloak e faça login
- Encontre o cliente: Clique em Clients, localize o cliente SAML que você criou anteriormente e abra-o.

- Role para baixo até Recursos SAML: Nessa tela, role para baixo até localizar a seção de recursos SAML. Certifique-se de que sua configuração esteja alinhada com as configurações mostradas na imagem abaixo.

- Assinatura e criptografia: Prossiga para a seção seguinte aos recursos SAML e verifique se a sua configuração corresponde à mostrada na figura abaixo. Especialmente o Asserções de sinais caixa de seleção.

- Clique em Salvar para criar um novo cliente SAML
Configuração do certificado do cliente
Abra o Chaves da configuração do cliente SAML e siga as instruções.
-
- Role para baixo até Certificado

- Clique em "Importar chave": Selecione a opção "Import key" (Importar chave) para abrir a janela de diálogo, onde você pode escolher o certificado que carregou no servidor Couchbase. O IdP (Keycloak) utilizará esse certificado para validar a assinatura das solicitações enviadas pelo Couchbase.
- Fazer upload "Certificado": Primeiro, escolha a opção "Certificate PEM" (Certificado PEM) para o formato de arquivo e, em seguida, clique no botão Browse (Procurar) para selecionar seu certificado no formato PEM.

- Importação: Clique em Importar para carregar o certificado no Keycloak
- Recarregar: Nesse momento, certifique-se de recarregar toda a página da Web
- Role para baixo até Certificado
Configuração de ponto de extremidade SAML de granulação fina
Abra o Avançado da configuração do cliente SAML e siga as instruções.
-
- Role para baixo até "Configuração de ponto de extremidade SAML de granulação fina"

- Preencha o URL de vinculação POST do serviço de consumidor de asserção: Pegue o URL de consumo do SP atual da página de configurações do Couchbase SAML e cole-o no campo Assertion Consumer Service POST Binding URL no Keycloak.
- Preencher URL de vinculação POST do serviço de logout: Nesta etapa, use o URL atual de logout do SP do Couchbase e cole-o no campo URL de vinculação POST do serviço de logout campo.

- Clique em Salvar
- Role para baixo até "Configuração de ponto de extremidade SAML de granulação fina"
Teste da integração
Criar um usuário do Keycloak
Depois de configurar o provedor de serviços (Couchbase) e o provedor de identidade (Keycloak), agora precisamos criar um usuário de teste antes de prosseguir com o teste da integração.
-
- Abrir o Keycloak: Volte para o console de administração do Keycloak e faça login
- Selecione Usuários: Clique no item de menu Usuários, à esquerda

- Clique em "Adicionar usuário": Clique no botão "Add User" (Adicionar usuário) para adicionar um novo usuário de teste do Keycloak

- Criar: criará um usuário no Keycloak.
- Selecione Credencial guia: Depois que o usuário for criado, você será direcionado para a tela de edição do usuário. Nessa tela, navegue até a guia Credentials (Credenciais) e certifique-se de definir uma senha para esse usuário clicando em Definir senha:

- Clique em Salvar: Salvar então Salvar senha
Adicionar mapeador de e-mail SAML
Agora, é importante determinar quais atributos de usuário serão usados para mapear os usuários do Keycloak para os usuários do Couchbase. Neste exemplo, usaremos o campo de e-mail, mas também é possível usar o nome de usuário ou qualquer outro atributo de usuário.
-
- Abrir o Keycloak: Volte para o console de administração do Keycloak e faça login
- Encontre o cliente: Clique em Clients, localize o cliente SAML que você criou anteriormente e abra-o

- Escopos de clientes abertos: Abrir escopos do cliente
- Clique no link do escopo: Cada cliente tem um escopo padrão com o nome do cliente, que, nesse caso, é couchbase-ui-dedicado. Clique nesse link para modificar as configurações do escopo:

- Adicionar mapeador: Na nova tela que aparece após clicar no link do escopo, clique no botão "Configurar um novo mapeador".

- Selecione Atributo do usuário: Na lista que é exibida, selecione a opção "Atributo do usuário" mapeador

-
- Preencher o formulário: Preencha o formulário com os valores mostrados na imagem abaixo, prestando atenção especial para garantir que o Formato de nome de atributo SAML é definido como não especificado.

- Salvar: Clique em Salvar para adicionar o mapeador ao escopo
- Preencher o formulário: Preencha o formulário com os valores mostrados na imagem abaixo, prestando atenção especial para garantir que o Formato de nome de atributo SAML é definido como não especificado.
Configurar o Couchbase para usar o mapeador
O IdP agora está transmitindo o atributo de e-mail na resposta SAML, mas o Couchbase ainda não foi configurado para utilizar esse atributo para a identificação do usuário:
-
- Faça login na interface do usuário do servidor Couchbase: Faça login na interface de usuário administrativa do servidor Couchbase. É aqui que você definirá as configurações de SAML.
- Clique em Segurança: Selecione segurança na navegação do lado esquerdo.
- Selecione a guia SAML: Clique na guia SAML para abrir as configurações de SAML
- Role para baixo até Configurações: Role para baixo até a seção Settings (Configurações) e abra Logon único para configurar o mapeamento do nome de usuário
- Configurar atributo: Modifique o campo "Username attribute" (Atributo de nome de usuário) para corresponder ao SAML Attribute Name (Nome do atributo SAML) que você especificou no Keycloak. Neste exemplo, foi usado "email".

Mapeamento de usuário para usuário
A maneira mais simples de mapear usuários é criar usuários externos no servidor Couchbase que correspondam aos usuários no Keycloak. Neste exemplo, fiz exatamente isso.
-
- Encontrar e-mail em Keycloak: Volte para o Keycloak e encontre o endereço de e-mail do seu usuário.
- Abra a interface do usuário do servidor Couchbase: Abra a interface do usuário do servidor Couchbase
- Clique em Segurança: À esquerda, você pode encontrar o link de segurança
- Abra a guia Usuários: Na parte superior, você encontrará a guia Users/Groups (Usuários/Grupos), clique nela para listar os usuários no servidor Couchbase

- Adicionar usuário: Clique no botão Add user (Adicionar usuário) no canto superior direito
- Usuário externo: Você precisa ter certeza de que configurou seu usuário como "Externo" consulte nossa documentação.
- Preencha o nome de usuário: Você copia o e-mail do Keycloak para esse campo

- Definir funções: No lado direito, você precisa selecionar as funções exatas que o usuário deve ter
- Configurar grupos: (Opcional) Você também pode adicionar seu usuário externo a qualquer grupo do servidor Couchbase especificado anteriormente
Neste ponto, você está pronto para testar o login com esse usuário de teste. Portanto, vá até a página de login do Couchbase e clique em Faça login usando o SSO:

Mapeamento de usuários usando grupos
Embora o mapeamento de usuário para usuário seja um ótimo começo, uma abordagem melhor para alinhar os usuários de SSO com os usuários do Couchbase envolve o mapeamento de grupos de SSO para grupos do Couchbase. Em seguida, utilize esses grupos do Couchbase para atribuir funções apropriadas, permitindo um controle granular sem a necessidade de mapeamento individual de usuário para usuário.
Crie um novo grupo no Keycloak e atribua usuários a ele
-
- Faça login no Keycloak: Faça login no console de administração do Keycloak e selecione seu reino.
- Clique em Grupos: Clique no item de menu Groups (Grupos) na navegação à esquerda
- Criar grupos no Keycloak. Vou criar um grupo chamado ro_admin no Keycloak. Clique no botão Create group (Criar grupo).

- Dê um nome ao seu grupo: Nomeie seu grupo como "ro_admin"

- Criar grupo: Crie o grupo clicando no botão Create (Criar).
- Abra seu usuário de teste: Clique em Usuários na navegação à esquerda, localize o usuário de teste e abra o usuário.
- Selecione a guia Grupos: Clique na guia grupos para visualizar os grupos atualmente atribuídos.

- Clique em Join Group: Clique no botão Join Group para atribuir o novo grupo que você acabou de criar a esse usuário de teste.
- Assinale o nome do grupo: Assinale a opção ro_admin nome do grupo na lista e clique em Aderir.

Configurar mapeadores de grupos SAML no Keycloak
-
- Vá para os clientes: Abra a área Clientes no Keycloak e selecione o cliente que você criou anteriormente para a integração com o Couchbase
- Selecionar escopos de cliente: Selecione a guia Client Scopes (Escopos do cliente) para editar o escopo incorporado para esse cliente
- Escopo aberto: Clique no nome do escopo, que deve ser o nome do cliente dedicado. No nosso caso, ele se chama: couchbase-ui-dedicado

- Adicionar mapeador: Clique em Add Mapper -> By Configuration e, na lista, selecione a opção Lista de grupos mapeador.

- Configurar o novo mapeador: Preencha os campos do formulário conforme ilustrado na imagem abaixo. Isso estabelecerá um mapeador de grupos que transfere os grupos de usuários para o Couchbase no atributo SAML denominado grupos.

- Clique em Salvar
Definir a configuração do grupo SAML no Couchbase
-
- Faça login no Couchbase: Faça login no console de administração do Couchbase e vá para Segurança e abra o SAML página de configurações.
- Role para baixo até Configurações: Role para baixo até a seção Settings (Configurações) e abra Login único
- Localize a seção de mapeamento de grupos: Navegue até a seção Grupo e configure-a conforme mostrado na imagem abaixo. Certifique-se de marcar a opção Atributo de grupos e digite o nome do atributo que configuramos no Keycloak anteriormente. No meu caso, ele se chama grupos.


- Criar um grupo: Vá para Segurança e clique no ícone ADICIONAR GRUPO no canto superior direito.
- Insira os detalhes do grupo: Preencha o nome do grupo e atribua algumas funções também. Neste exemplo, vou criar um grupo de administradores Read-Only.

- Clique em Salvar
- Faça login no Couchbase: Faça login no console de administração do Couchbase e vá para Segurança e abra o SAML página de configurações.
Agora você está preparado para realizar o teste inicial de mapeamento de grupo. Se tiver criado anteriormente um usuário externo na seção Mapeamento de usuário para usuário, ele deverá ser excluído para prosseguir com esse teste. Vale ressaltar que o Couchbase executará o provisionamento de usuário Just-In-Time (JIT) nesse cenário. Não há necessidade de um usuário externo pré-existente; o Couchbase criará um automaticamente e, com base no mapeamento do grupo, atribuirá a função apropriada a esse usuário.
Solução de problemas
Se tiver algum problema, analise os registros de resposta e solicitação do SAML no Keycloak e no Couchbase para verificar possíveis erros ou configurações incorretas. Além disso, consulte nosso artigo anterior sobre SAML, que oferece várias dicas úteis para solucionar problemas relacionados a SAML.
Práticas recomendadas de segurança
A implementação de práticas sólidas de segurança é fundamental ao integrar o SAML com o Keycloak e o Couchbase. Esta seção destaca as principais considerações e práticas recomendadas de segurança para garantir uma configuração segura e robusta.
-
- Usar HTTPS: Sempre use HTTPS em vez de HTTP para todas as comunicações envolvendo o Keycloak e o Couchbase, incluindo o Assertion Consumer Service (ACS) UR
- Certificados e chaves: Use certificados e chaves de criptografia fortes e atualizados para afirmações SAML. Configure o Keycloak e o Couchbase para confiar nesses certificados
- Registros: Analise regularmente os registros no Keycloak e no Couchbase em busca de atividades incomuns ou violações de segurança.
- Trilhas de auditoria: Manter trilhas de auditoria para ações e alterações críticas no Keycloak e no Couchbase
- Revisar configurações padrão: Analise e modifique cuidadosamente as configurações padrão no Keycloak e no Couchbase para aumentar a segurança.
Conclusão
Neste guia, exploramos as etapas envolvidas na integração do Couchbase com o SAML Idp, concentrando-nos especificamente nas configurações do Keycloak. Essa integração facilita o gerenciamento seguro e eficiente de usuários, aproveitando os recursos robustos do Keycloak como provedor de identidade. Lembre-se de que a segurança e a eficiência no gerenciamento de usuários não são apenas metas, mas processos contínuos. Atualize regularmente seus sistemas, mantenha-se informado sobre as últimas tendências de segurança e seja proativo ao fazer melhorias. Seu feedback sobre este guia é inestimável. Sinta-se à vontade para compartilhar suas experiências, desafios e sucessos.