服务的两个分支可能拥有相同的 SPN 吗?或者至少客户端引用单个身份?

服务的两个分支可能拥有相同的 SPN 吗?或者至少客户端引用单个身份?

对于安装在两个独立服务器“Server1”和“Server2”上的 WCF 服务“SuperService”,是否可以有一个可供 WCF 客户端“SuperClient”引用的 SPN 标识字符串?

这样,SuperClient 可以使用 Server1 或 Server2 上托管的服务,而不必知道哪个服务器托管它所连接的实例,但不必更改其身份字符串。

答案1

双人组:

是的。第一步是接收进程的身份,因此您需要在两者上使用服务的通用身份(功能上意味着域用户帐户,或者更好的是 GMSA)。

这样您就可以通过名称交替连接到任一服务器(假设每个服务器都注册了一个 SPN),但您确实提到了对使用哪个服务器的不可知性......

实现这一点的方法是使用虚拟 IP,或者具有多个目标(循环)的 DNS A 记录或类似方法。

因此,如果 www.example.com 是您要引导客户访问的服务,那么您将

SETSPN -S http/www.example.com MyDomain\GMSAICreatedEarlier

相关内容