Em nosso outro post falamos sobre a Instalação do PostgreSQL no CentOS 9 e nele configuramos a autenticação LDAP usando filtro de grupo. Caso você precisa autenticar usuários de duas OU’s distintas (por exemplo) é possível usar filtro de roles no pg_hba.conf. Para isso vamos:

  • No Active Directory (não detalharemos essa parte):
    • Criar um usuário de serviço no AD svc_nomeapp_dbprd;
    • Adicionar este usuário ao grupo de conexão;
  • No PostgreSQL:
    • Criar uma role chamada appservices;
    • Atribuir um usuário a esta role appservices;
    • Adicionar uma conexão no pg_hba, para usuário desta role appservices.

Na parte do servidor PostgreSQL, conecte ao banco com o usuário postgres e execute:

create user "svc_nomeapp_dbprd";

create role appservices;

GRANT appservices TO svc_nomeapp_dbprd;

Saia do PostgreSQL. Ainda no Linux, execute:

vim /etc/pgsql/pg_hba.conf

Localize a seguinte linha que contenha a conexão LDAP, pressione a tecla INSERT do teclado, para entrar em modo de edição e insira ACIMA dessa linha (altere as partes em cinza, caso seja necessário):

host all +appservices 0.0.0.0/0 ldap ldapserver=IP_DO_SEU_DC ldapbasedn=”DN_DA_OU_ONDE_ESTAO_OS_USUARIOS” ldapbinddn=”conta_de_serviço@seudominio.com.br” ldapbindpasswd=”SENHA_DESSA_CONTA” ldapsearchfilter=”(&(objectClass=user)(sAMAccountName=$username)(memberOf=DN_DO_GRUPO_DO_AD))”

Após a edição, pressione a tecla ESC para sair do modo de edição, em seguida digite :wq! e pressione ENTER para salvar e sair.

Agora reinicie o serviço do PostgreSQL e teste a conexão com um usuário LDAP que já tinha acesso e teste com a nova conta de serviço.

systemctl stop postgresql

systemctl start postgresql

Fontes/Referências

NVLAN – Instalação do PostgreSQL no CentOS 9

https://docs.vultr.com/implement-rolebased-permissions-with-postgresql?utm_source=performance-max-latam
https://stackoverflow.com/questions/59225772/can-we-use-multiple-ous-organizational-unit-in-apache-ldap-along-with-postgre

Mais Informações

Esperamos ter te ajudado e estaremos sempre a disposição para mais informações.

Se você tem interesse em algum assunto específico, tem alguma dúvida, precisa de ajuda, ou quer sugerir um post, entre em contato conosco pelo e-mail equipe@nvlan.com.br.

NVLAN - Consultoria
Categorias: POSTs