Integrasi Active Directory dengan AlloyDB Omni gagal
Jika Active Directory tidak berfungsi, ikuti langkah-langkah berikut untuk menyelesaikan masalah:
Tambahkan biner
psqlke PATH Anda. Jikapsqltidak ada di PATH default Anda, Anda dapat menambahkan direktori yang berisi executablepsqlke PATH sesi Anda. Hal ini memungkinkan Anda menggunakanpsqlsecara langsung tanpa menentukan jalur lengkap dalam perintah berikutnya.export PATH=$PATH:/usr/lib/postgresql/18/bin
Atau, Anda dapat mengganti
psqldengan/usr/lib/postgresql/18/bin psqldi setiap perintah berikut.Verifikasi file keytab. Pastikan Anda dapat terhubung ke server Active Directory menggunakan keytab yang Anda peroleh:
kinit -kt PATH_TO_KEYTAB_FILE postgres/DBCLUSTER_HOST@REALM
Verifikasi host.
Pastikan host yang Anda gunakan saat membuat file keytab adalah host yang sama dalam perintah psql, seperti yang ditunjukkan dalam contoh berikut:
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
Pastikan
DBCLUSTER_HOSTsama di kedua perintah.Verifikasi file
krb5.conf.Verifikasi konten file
krb5.confdi klien. Pastikan konten filekrb5.confsudah benar untuk konfigurasi Anda.cat /etc/krb5.conf
Berikut adalah output yang diharapkan:
[libdefaults] default_realm = REALM [realms] REALM = { kdc = KDC_HOST admin_server = ADMIN_SERVER } [domain_realm] HOST_DOMAIN_1 = REALM HOST_DOMAIN_2 = REALMVerifikasi entri dan status HBA.
Jalankan perintah berikut dan kirim log ke tim produk AlloyDB Omni.
psql -h DBCLUSTER_HOST -U postgres -d postgres
psqlmeminta Anda memasukkan sandi penggunapostgres:Password for user postgres:
psqlmenampilkan output berikut:psql (18.1) SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, compression: off, ALPN: none) Type "help" for help.
Jalankan perintah berikut di perintah
psql:postgres=# table pg_hba_file_rules ;
Output yang mirip dengan contoh berikut akan ditampilkan.
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 | |
Tinjau pesan error di kolom
error, yang dapat membantu Anda mengidentifikasi masalah konfigurasi.Cetak log
krb5tingkat debug.export KRB5_TRACE=/dev/stderr kinit AD_USER@REALM psql -h DBCLUSTER_HOST -d DB_NAME -U USERNAME@REALM
psql: error: connection to server on socket "/tmp/.s.PGSQL.5432" failed: FATAL: role "user2" does not exist
Deskripsi
Error ini terjadi saat pengguna sistem, yang mencoba terhubung, tidak memiliki pengguna PostgreSQL yang dibuat, atau tidak memiliki peran yang dipetakan.
Perbaikan yang direkomendasikan
Buat peran di PostgreSQL dengan nama pengguna yang diperlukan, atau tambahkan entri untuk pengguna ini ke file pg_ident.conf.
psql (16.3)
Type "help" for help.
postgres=# CREATE ROLE user2 WITH LOGIN;
CREATE ROLE
Mulai ulang server gagal dengan error: "could not load /var/lib/postgresql/data/pg_hba.conf"
Deskripsi
Mulai ulang server gagal karena pg_hba.conf berisi entri yang tidak valid.
Perbaikan yang direkomendasikan
Periksa file pg_hba.conf untuk entri yang tidak valid.
FATAL: LDAP group synchronization failed
Deskripsi
Sinkronisasi LDAP gagal saat pengguna mencoba login.
Perbaikan yang direkomendasikan
Login sebagai pengguna
postgresdan jalankan perintah berikut:CREATE EXTENSION google_pg_auth;
Periksa file
postgresql.loguntuk mengetahui informasi tentang alasan login LDAP gagal.cat /obs/diagnostic/postgresql.log | grep google_pg_auth