Active-Directory
如何為 Postgres SSPI 設置 SPN
我正在嘗試設置 Postgres 以支持 SSPI/Kerberos,但是我認為我還沒有找到讓它工作所需的正確 SPN。
背景詳情:
- postgres 的服務帳戶:‘postgres’
- 域名:’testdomain.com'
- 域控制器:‘dc.testdomain.com’
我嘗試了以下 SPN 並且運氣為零:
setspn -A HOST/testdomain.com postgres
setspn -A HOST/testdomain postgres
setspn -A POSTGRES/testdomain.com postgres
setspn -A POSTGRES/testdomain postgres
setspn -A POSTGRES/dc.testdomain.com postgres
有人有什麼建議嗎?
SPN 不使用域和/或域控制器的名稱,它們使用將用於連接到服務的 FQDN。響應的 Web 伺服器的 SPN
www.domain.com
將是HTTP/www.domain.com
.接下來,您需要將 SPN 分配給執行服務的使用者帳戶;如果服務作為域電腦執行
LocalSystem
或NetworkService
在域電腦上執行,那將是電腦的電腦帳戶;否則它是服務執行的實際使用者帳戶。您的問題中缺少的是執行 Postgres 的伺服器的名稱;假設它是
servername.testdomain.com
,設置 SPN 的命令將是:setspn -S POSTGRES/servername.testdomain.com postgres
或者(使用域 NetBIOS 名稱並假設它是
TESTDOMAIN
)setspn -S POSTGRES/servername.testdomain.com TESTDOMAIN\postgres
資料來源:
https://wiki.postgresql.org/wiki/Configuring_for_single_sign-on_using_SSPI_on_Windows