WCF自托管:禁止匿名身份验证方案使用http请求

时间:2018-08-30 13:33:25

标签: c# windows wcf windows-server-2016

情况:

我们在新的Windows Server 2016计算机(计算机X)上安装了自托管WCF服务。该服务在另一台Windows Server 2016计算机(计算机Y)上调用Tibco BW Web服务。

当WCF服务与用户A(内置管理员的一部分)一起运行时,所有请求均被成功处理。当服务以用户B(服务用户)的身份运行时,我们会收到以下消息:“禁止匿名身份验证方案使用http请求”

这两个服务都在basicHtttpBinding下运行。

我们能够在不同的Windows Server 2016环境中成功地与不同的用户进行相同的安装。

到目前为止已采取的步骤:

  1. 我们比较了与用户A和用户B一起运行该服务时发送的软件包,发现当与用户B一起运行该服务时,没有软件包将到达计算机Y。
  2. 我们在两台计算机上都禁用了Windows防火墙,但这并没有改变行为。
  3. 我们通过gpresult比较了用户A和B的权利和政策,但看不到有关网络访问或http相关政策的任何差异。

我们的猜测

我们怀疑用户B缺少某种权限,无法像用户A一样发出HTTP请求。

问题

  • 是否存在用于管理此类行为的组策略?
  • 哪些设置可能阻止用户发送这些请求?
  • 为什么不使用任何安全设置却收到此错误消息?

谢谢

1 个答案:

答案 0 :(得分:0)

我们进行了有线通讯分析,发现仍然有一项策略要求服务帐户重定向代理服务器上的所有流量。大多数likley都不知道该代理如何处理WCF流量,所有请求均导致我们观察到错误消息。

一旦我们更改了策略以允许阻止服务用户使用代理,请求就会按照预期并与其他管理员用户一起观察到。