WCF 客户端如何动态生成目标服务的 SPN 以获取 Spnego 用例中的 kerberos 票证?例如,如果目标服务在域机器帐户下运行,则与该服务关联的 SPN 将采用“主机/机器名”的形式。
如果我们尝试使用 wcf 客户端调用服务,wcf 客户端能够获取主机/机器名的票证。我最初认为 wcf 客户端可能默认使用硬编码字符串 host/+domainname。
但是如果我将目标服务更改为在域用户下运行并将名为“http/machinename”的 SPN 与域用户相关联,wcf 客户端仍然能够成功生成该服务的票证。
WCF 客户端如何决定在这些场景中使用前缀“host/”还是“http/”。
我知道有一种方法可以在端点元素下的客户端添加自定义 spn,但我很想知道默认情况下它是如何工作的。