Windows 上的 PHPPGAdmin - 根据 Active Directory 验证用户身份

Windows 上的 PHPPGAdmin - 根据 Active Directory 验证用户身份

我在属于 Windows 域的 Windows 机器上安装了 PHP、Apache 2.4 和 PostgreSQL 9.4.1。

我的配置文件

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 帐户下运行,服务主体名称特权(如所述)这里)。我在 PostgreSQL 中创建了与我的 AD 帐户同名的用户帐户。如上所述,我在同一台机器上安装了 PHP 和 Apache。我安装了 PHPPGAdmin - 一个基于 PHP 的 PostgreSQL Web 界面。

当我使用 PGAdmin(在 AD 帐户下运行)直接连接到 PostgreSQL 时,一切都按预期工作 - 我可以使用我的域凭据登录。

当我通过 Web 浏览器连接到 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 在本地系统帐户下运行(如果您查看上述错误,这是有道理的)。

我怎样才能让它发挥作用?

提前致谢。

相关内容