Webservice IIS和权限401错误

时间:2011-04-15 17:15:14

标签: c# .net web-services

我有一个我不明白的问题

我在两个不同的位置有一个Web服务(不是WCF),我的localhost和我们的开发服务器。

我的localhost正在运行

XP SP3 IIS 5.1

Dev Server正在运行

Windows Server 2003 SP 2 IIS 6.0

IIS中的目录安全性是匿名访问和集成Windows身份验证

我的问题是当我从VS2010内部运行以下代码时

Dim ws As RunExternalProcess.ProcessExecution = New RunExternalProcess.ProcessExecution
ws.Timeout = Convert.ToInt32(ConfigurationManager.GetConfigurationValue(KEY_VALUE_PROCESS_TIMEOUT_MILLISECONDS))
ws.ExecuteProcess (BusinessClasses.RunExternalProcess.enuProcessType.EFTCreateFile, PROC_POST, strParameters)

当web服务指向开发服务器时,它运行正常。当指向我的本地时,我收到HTTP 401错误

如果我添加行

 ws.Credentials = System.Net.CredentialCache.DefaultCredentials

它对我的本地工作正常。在部署之前我需要回答的问题是,如果今天可以正常访问开发Web服务,为什么我需要凭据行。我的当地有什么不同?

任何想法?

2 个答案:

答案 0 :(得分:0)

您可能不允许anonymous access用于本地服务器。

默认情况下,客户端会复制Internet Explorer的凭据/代理设置,因此您可能也想检查这些设置。

答案 1 :(得分:0)

我看过URL扫描也做了一些奇怪的事情,如果你正在运行URL扫描检查,看看是否有任何设置阻止访问它。