想知道在使用标志并加密令牌的负载平衡环境中部署自定义WCF - 安全令牌服务(STS)的最佳做法是什么?
我们正在使用Cirtix NetScaler来处理负载平衡和SSL终止(即证书仅安装在NetScaler服务器上)。已指定STS通过SigningCertificateName和EncryptionCertificateName应用程序设置对令牌进行签名和加密。但是,当前的Web服务器配置没有在其认证存储中安装本地证书。
所以我的问题是: -
答案 0 :(得分:4)
未签署其令牌的STS用处不大:没有签名,任何依赖方都无法区分STS发出的有效令牌和恶意用户欺骗的令牌。
您为支持SSL而安装的证书通常与STS的签名证书不同。后者标识服务,而不是Web服务器。因此,一定要在负载均衡器上继续安装SSL证书。但是,您需要在托管服务的每台计算机上安装另一个代表服务标识的证书(使用其私钥),以用作SigningCertificate。它应该是每个服务器上的相同证书(它是相同的服务)。
但是,您通常不需要购买此类证书:您可以自行发布 - 您只需要确保每个潜在的信赖方都配置为将证书识别为可信赖的STS ,并且还信任证书的根颁发者(如果是自签名证书,则为证书本身;如果您使用证书服务器颁发证书,则为根证书)。