2011-04-15 39 views
2

我有一个问题,我不明白Webservice的IIS和权限401错误

我有两个不同的位置,我的本地和我们的发展服务器Web服务(不WCF)。

我的本地运行

XP SP3 IIS 5.1

开发服务器正在运行

的Windows Server 2003 SP 2 IIS在IIS的两个6.0

目录安全性是匿名访问和集成的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服务指向Dev服务器时,它运行良好。当指着我的地方,我得到一个HTTP 401错误

如果我添加行

ws.Credentials = System.Net.CredentialCache.DefaultCredentials 

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

任何想法?

回答

0

您的本地服务器可能不允许anonymous access

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

+0

我双重三重检查我允许匿名访问。 IE没有代理设置。 – Mike 2011-04-15 18:06:45

0

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