У меня есть приложение для Windows c ++, которое использует libpq для работы с PostgreSQL.
Мой код:
std::string conninfo = "host=localhost port=5432 dbname=test connect_timeout=10";
_connectionHandlerPtr = PQconnectdb(conninfo.c_str());
Теперь мне нужно использовать MIT Kerberos для аутентификации.
Я установил MIT Kerberos.
Что мне нужно сделать в моем коде?
Что мне нужно изменить в конфиге PostgreSQL?
Я не думаю, что вам нужно что-то менять в своем коде. Быстрый взгляд на psql
предполагает, что вся поддержка Kerberos обрабатывается через libpq
, так psql
не должен заботиться; то же самое должно быть верно для вашего приложения.
Если ваша система настроена на Kerberos auth и у вас есть тикет, вам просто нужно установить krbsrvname
в вашей строке подключения libpq. Увидеть параметры libpq. В Windows вам также может понадобиться установить gsslib
в gssapi
если вы хотите использовать MIT Kerberos вместо SSPI.