我正在尝试为 postgres 服务器设置 Windows 身份验证。
这个过程没有很好的记录,使整个事情变得模糊不清。
我找到了这个文档,但还不清楚。
在必要的步骤中,文档说您需要创建域用户。然而在屏幕截图中,它说DomainServiceAccount
一旦您创建了域用户并使用域用户设置了 postgres 服务,您需要在 AD 服务器中使用以下命令行为您的服务帐户创建一个服务主体名称
setspn -S POSTGRES/[fully.qualified.domain.name] DOMAIN\[service_account_name]
问题如下
- 是
service_account_name
=DomaninServiceAccount
=Domain user
吗? - 如果我的第一个问题是正确的,我创建了一个名为的用户
SuperPostgres
,我设置了文档中提到的用户的服务SuperPostgres
,我使用命令行创建了一个 SPNspn
并设置了文档中提到的相关角色,是否确定Postgres 将允许 AD 用户喜欢AndyKw
连接到 postgres 数据库吗?
是的
Service_account_name = DomaninServiceAccount = 域用户
服务帐户实际上是域用户,只是具有一些额外的设置,例如“无交互式登录”和“密码不会过期”。不知道为什么他们也会使用“DomaninServiceAccount”。这只是 Service_account_name
确定吗?只需进行测试,但对于非 Windows 应用程序来说它看起来很常见(Atlassian 也这样做,而且我还有其他具有 AD 身份验证的 Java 应用程序)