Soluciona problemas relacionados con la integración de Active Directory en AlloyDB Omni

Selecciona una versión de la documentación:

En este documento, se describen los errores que puedes encontrar cuando integras Active Directory en AlloyDB Omni. También se proporcionan ejemplos de errores y correcciones recomendadas.

Active Directory no funciona

Descripción

Active Directory no funciona en AlloyDB Omni, lo que se debe a entradas pg_hba.conf incorrectas. Si las entradas que agregaste al archivo pg_hba.conf no son válidas, AlloyDB para PostgreSQL las ignora. Como resultado, el mecanismo de autenticación especificado no funcionará.

Corrección sugerida

Para ver el mensaje de error, incluida la información para resolver el problema, accede a psql y ejecuta el siguiente comando:

docker exec -it alloydb_docs psql -h localhost -U postgres
psql (16.3)
Type "help" for help.
postgres=# table pg_hba_file_rules ;
 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       |                          |
.

psql: error: connection to server on socket "/tmp/.s.PGSQL.5432" failed: FATAL: role "user2" does not exist

Descripción

Este error se produce cuando un usuario del sistema que intenta conectarse no tiene un usuario de PostgreSQL creado o no tiene un rol asignado.

Corrección sugerida

Crea un rol en PostgreSQL con el nombre de usuario requerido o agrega una entrada para este usuario al archivo pg_ident.conf.

psql (16.3)
Type "help" for help.

postgres=# CREATE ROLE user2 WITH LOGIN;
CREATE ROLE

Server restart fails with error: "could not load /var/lib/postgresql/data/pg_hba.conf""

Descripción

No se pudo reiniciar el servidor porque pg_hba.conf contiene entradas no válidas.

Corrección sugerida

Verifica el archivo pg_hba.conf para ver si hay entradas no válidas.

¿Qué sigue?