Falha na integração do Active Directory ao AlloyDB Omni
Quando o Active Directory não estiver funcionando, siga estas etapas para resolver o problema:
Verifique o arquivo keytab. Verifique se é possível se conectar ao servidor do Active Directory usando o keytab que você recebeu:
kinit -kt PATH_TO_KEYTAB_FILE postgres/DBCLUSTER_HOST@REALM
Verifique o host.
Verifique se o host usado ao gerar o arquivo keytab é o mesmo host no comando psql, conforme mostrado no seguinte exemplo:
KTPass /princ postgres/DBCLUSTER_HOST@REALM /Pass PASSWORD /mapuser postgres /crypto ALL /ptype KRB5_NT_Principal /out OUTPUT_PATH psql -h DBCLUSTER_HOST -d DB_NAME -U USERNAME@REALM
Verifique se
DBCLUSTER_HOST
é o mesmo nos dois comandos.Verifique o arquivo
krb5.conf
.Verifique o conteúdo do arquivo
krb5.conf
no cliente. Verifique se o conteúdo do arquivokrb5.conf
está correto para sua configuração.cat /etc/krb5.conf
Esta é a resposta esperada:
[libdefaults] default_realm = REALM [realms] REALM = { kdc = KDC_HOST admin_server = ADMIN_SERVER } [domain_realm] HOST_DOMAIN_1 = REALM HOST_DOMAIN_2 = REALM
Verifique as entradas e o status da HBA.
Execute os comandos a seguir e envie os registros para a equipe de produtos do AlloyDB Omni.
psql -h DBCLUSTER_HOST -U postgres -d postgres
O
psql
pede a senha do usuário dopostgres
:Password for user postgres:
psql
retorna a seguinte resposta:psql (17.5 (Ubuntu 17.5-0ubuntu0.25.04.1), server 16.3) SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, compression: off, ALPN: none) Type "help" for help.
Execute o seguinte comando no prompt do
psql
:postgres=# table pg_hba_file_rules ;
Uma resposta semelhante ao exemplo a seguir será retornada.
rule_number | file_name | line_number | type | database | user_name | address | netmask | auth_method | options | error -------------+--------------------------------------+-------------+---------+----------+--------------------+-----------+-----------------------------------------+-------------+--------------------------+----------------------------------------------------- 1 | /var/lib/postgresql/data/pg_hba.conf | 1 | host | {all} | {alloydbadmin} | 127.0.0.1 | 255.255.255.255 | trust | | | /var/lib/postgresql/data/pg_hba.conf | 2 | hostssl | {all} | {alloydbadmin} | ::1 | ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff | trust | | hostssl record cannot match because SSL is disabled | /var/lib/postgresql/data/pg_hba.conf | 3 | hostssl | {all} | {alloydbpgbouncer} | 0.0.0.0 | 0.0.0.0 | cert | {clientcert=verify-full} | hostssl record cannot match because SSL is disabled | /var/lib/postgresql/data/pg_hba.conf | 4 | hostssl | {all} | {alloydbpgbouncer} | ::1 | ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff | cert | {clientcert=verify-full} | hostssl record cannot match because SSL is disabled | /var/lib/postgresql/data/pg_hba.conf | 5 | hostssl | {all} | {alloydbadmin} | all | | reject | | hostssl record cannot match because SSL is disabled | /var/lib/postgresql/data/pg_hba.conf | 6 | | | | | | | | invalid CIDR mask in address "0.0.0.0/1000" 2 | /var/lib/postgresql/data/pg_hba.conf | 7 | local | {all} | {all} | | | trust | |
Analise as mensagens de erro na coluna
error
, que podem ajudar a identificar problemas de configuração.Imprima os registros
krb5
de nível de depuração.export KRB5_TRACE=/dev/stderr kinit AD_USER@REALM psql -h DBCLUSTER_HOST -d DB_NAME -U USERNAME@REALM
psql: erro: falha na conexão com o servidor no soquete "/tmp/.s.PGSQL.5432": FATAL: o papel "user2" não existe
Descrição
Esse erro ocorre quando um usuário do sistema que está tentando se conectar não tem um usuário do PostgreSQL criado ou não tem um papel mapeado.
Correção recomendada
Crie um papel no PostgreSQL com o nome de usuário necessário ou adicione uma entrada para esse
usuário ao arquivo pg_ident.conf
.
psql (16.3)
Type "help" for help.
postgres=# CREATE ROLE user2 WITH LOGIN;
CREATE ROLE
Falha na reinicialização do servidor com o erro: "não foi possível carregar /var/lib/postgresql/data/pg_hba.conf"
Descrição
A reinicialização do servidor falhou porque o pg_hba.conf
contém entradas inválidas.
Correção recomendada
Verifique se há entradas inválidas no arquivo pg_hba.conf
.
FATAL: falha na sincronização do grupo LDAP
Descrição
A sincronização do LDAP falha quando o usuário tenta fazer login.
Correção recomendada
Faça login como o usuário
postgres
e execute o seguinte:CREATE EXTENSION google_pg_auth;
Verifique o arquivo
postgresql.log
em busca de informações sobre o motivo da falha do login do LDAP.cat /obs/diagnostic/postgresql.log | grep google_pg_auth