C# 非以本地管理员身份运行时.NET web服务客户端中的奇怪行为

C# 非以本地管理员身份运行时.NET web服务客户端中的奇怪行为,c#,permissions,timeout,service,C#,Permissions,Timeout,Service,我们在客户站点部署应用程序时遇到了一个非常奇怪的情况。此应用程序是使用.NET3上的C#作为服务实现的。应用程序与使用gSOAP编写的web服务通信。在我们的.NET应用程序中,包装web服务的类是通过在Visual Studio中执行“添加服务”并引用WSDL创建的。通信使用HTTPS执行,但使用端口35000 我们看到的是,当我们的应用程序作为“本地管理员帐户”运行时,一切都运行良好。然而,当我们的应用程序作为任何其他帐户运行时,包括“本地系统帐户”,甚至是具有网络管理员权限的用户帐户,we

我们在客户站点部署应用程序时遇到了一个非常奇怪的情况。此应用程序是使用.NET3上的C#作为服务实现的。应用程序与使用gSOAP编写的web服务通信。在我们的.NET应用程序中,包装web服务的类是通过在Visual Studio中执行“添加服务”并引用WSDL创建的。通信使用HTTPS执行,但使用端口35000

我们看到的是,当我们的应用程序作为“本地管理员帐户”运行时,一切都运行良好。然而,当我们的应用程序作为任何其他帐户运行时,包括“本地系统帐户”,甚至是具有网络管理员权限的用户帐户,web服务方法调用有时会超时。其他情况下,他们会成功,但会持续很长时间,例如100秒,而不是预期的1秒

该客户在其网络中使用Cisco交换机


我们在其他网站上没有遇到这种行为。如有任何见解或建议,将不胜感激。

是否有超时、异常等事件日志消息

该应用程序是windows服务吗?您是否使用RunAs在不同的用户上下文下运行?它是否需要桌面交互,或者是否引用过System.Windows.Forms

@评论1: Windows服务、Web服务、WCF服务

对于服务可能使用的资源的本地和远程计算机

另一件事是像这样添加调试级日志。。。(为伪VB感到抱歉)


在任何可能失败的进程之前和之后,将此类日志嵌入到应用程序中

客户是否在防火墙硬件上有BI规则?(我在抓救命稻草,但几年前,我们的一个客户消费了我们的一项服务,因为他们在防火墙上启用了一些时髦的BI规则,所以我们得到了类似的行为。)

代码运行在什么操作系统上?它是windows服务还是独立应用程序?它安装到哪个目录。正如我在原始消息中所写,该应用程序是一个服务。我们使用服务属性来更改服务在哪个安全帐户下运行。我们没有从.NETAPI收到任何关于这些方法超时原因的特别指示,除了它们确实超时之外。
Sub OnStart(args())
 LogToFile("Starting Service, processing arguments")
 'process args'
 LogToFile("ArgsProcessed calling main worker method")
 'call main worker method'
End OnStart

Sub LogToFile(message as String)
 If (AppConfigKeys[debugLogging] = True) Then
   'writes "DateTime.Now.ToString() & "-" & message" to a text file log' 
 End If
End Sub