对于安装在两个独立服务器“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