Назад | Перейти на главную страницу

PHPPGAdmin в Windows - аутентификация пользователей в Active Directory

Я установил PHP, Apache 2.4 и PostgreSQL 9.4.1 на компьютер с Windows, который принадлежит домену Windows.

Мой pg_hba.conf:

hostnossl   all  postgres     127.0.0.1/32       md5
hostnossl   all  all          127.0.0.1/32       sspi
hostssl     all  all          127.0.0.1/32       sspi
hostnossl   all  postgres     ::1/128            md5
hostnossl   all  soescript    ::1/128            md5
hostnossl   all  all          ::1/128            sspi
hostssl     all  all          ::1/128            sspi
hostssl     all  postgres     .mydomain.com      md5
hostssl     all  all          .mydomain.com      sspi

Сервер PostgreSQL работает под учетной записью AD с ServicePrincipalName привилегия (как описано Вот). Я создал учетную запись пользователя в PostgreSQL с тем же именем, что и моя учетная запись AD. Как упоминалось выше, я установил PHP и Apache на одном компьютере. Я установил PHPPGAdmin - веб-интерфейс для PostgreSQL на основе PHP.

Когда я подключаюсь напрямую к PostgreSQL с помощью PGAdmin (работающего под учетной записью AD), все работает, как ожидалось - я могу войти в систему, используя учетные данные своего домена.

Когда я подключаюсь к интерфейсу PHPPGAdmin через веб-браузер, я не могу войти в систему, используя учетные данные своего домена.

Я получаю следующие ошибки:

LOG: connection received: host=::1 port=50395

LOG: provided user name (<my user name>) and authenticated user name (SYSTEM) do not match 
FATAL: SSPI authentication failed for user "<my user name>" DETAIL: Connection matched pg_hba.conf line 91: "hostssl all all ::1/128 sspi

LOG: connection received: host=::1 port=50396 

LOG: provided user name (<my user name>) and authenticated user name (SYSTEM) do not match 
FATAL: SSPI authentication failed for user "<my user name>" DETAIL: Connection matched pg_hba.conf line 90: "hostnossl all all ::1/128 sspi"

Apache работает под учетной записью Local System (что имеет смысл, если вы посмотрите на ошибки выше).

Как мне убедить его работать?

Заранее спасибо.