在Spnego用例中,WCF客户端如何动态生成目标服务的SPN来获取kerberos票证?例如,如果目标服务在域计算机帐户下运行,则与该服务关联的SPN的格式为'host/machinename‘。
如果我们尝试使用wcf客户端调用服务,则wcf客户端能够获得host/machinename的票证。我最初认为wcf客户端可能在默认情况下使用硬编码字符串host/+domainname。
但是,如果我将目标服务更改为在域用户下运行,并将名为"http/machinename“的SPN与域用户关联,wcf客户端仍然能够成功生成此服务的票证。
在这些情况下,WCF客户端如何决定是否使用前缀“host/”或“http/”。
我知道有一种方法可以在客户端的端点元素下添加自定义spn,但我很想知道它在默认情况下是如何工作的。
发布于 2015-04-21 23:23:08
Windows凭据类型的默认值为host/myhostname。这也是使用计算机帐户运行WCF服务时预期的SPN。
请注意,WSDL将包括身份(例如SPN),因此WCF客户端可以在连接时使用该信息。检查WCF测试客户端配置文件以查看实际生成的内容。
https://stackoverflow.com/questions/24966779
复制相似问题