我需要为net.tcp服务设置什么SPN?

时间:2020-03-05 18:46:13  来源:igfitidea点击:

我有一个运行本地Windows帐户的Windows服务中托管的WCF应用程序。我需要为此帐户设置一个SPN吗?如果是这样,SPN需要设置什么协议?我知道如何针对HTTP服务执行此操作,但从未针对net.tcp执行此操作。

解决方案

回答

默认情况下(即开箱即用)net.tcp服务是不安全的,根本不执行任何身份验证。因此,我们将不需要(实际上也不需要)设置服务主体名称。

如果需要进行身份验证,请检查MSDN上的net.tcp安全模式。了解不同组合的最佳方法是进行实验!

回答

如图所示,将服务帐户更改为AD帐户并注册SPN。使用我们自己的服务名称,例如fooservice

setspn -A fooservice/servermachinename domain\serviceAccountName

  setspn -A fooservice/servermachinename.fullyqualifieddomainname
  domain\serviceAccountName

在客户端配置集中:

<identity>
    <serviceprincipalname value="fooservice/servermachinename" />
</identity>