【发布时间】:2010-10-19 08:55:19
【问题描述】:
我有一个服务器(Windows 2003/IIS 6)。该服务器在 IIS 中有几个不同的“网站”设置。每个站点都在 IIS 中配置有不同的主机标头(端口 80)。此外,每个站点也可以通过指定的端口号访问(没有主机头)。
例如:
我的站点 1: http://apps.mysite1.com 要么 http://myserver:xxxx
我的站点2: http://something.mysite2.com 要么 http://myserver:yyyy
我已经编辑了我的主机文件(它是一台开发机器)以将每个站点的主机头重定向到本地机器(127.0.0.1)。
我在一个 IIS 站点 (mysite1) 中有一个 ASP.NET 2.0 网站,在另一个 IIS 站点 (mysite2) 中有一个 ASP.NET 2.0 Web 服务。该网站使用类似于以下的代码与 Web 服务进行通信:
MyWebService svc = new MyWebService();
//also have tried "http://myserver:yyyy/MyWebService.asmx" below
svc.Url = "http://something.mysite2.com/MyWebService.asmx";
svc.Credentials = System.Net.CredentialCache.DefaultCredentials;
svc.MyMethod();
所有站点都配置为使用 Windows 集成安全性,ASP.NET 配置为使用
我的工作正常,但是我重建了我的 Web 服务(新方法),现在任何以 401 Unauthorized 消息结尾的 Web 服务调用的结果都无法正常工作。
听起来确实像一个双跳问题。我相信这与 Web 服务不接受正在传递的凭据和挑战要传递的新凭据有关。只是不确定如何确认这一点。不知道为什么它会挑战 - 我以机器/域管理员身份登录,并且 IE 配置为在 Internet 选项 > 安全选项卡 > 自定义级别 > Intranet 区域中的自动登录中传递凭据。是的,相关站点已添加到我的“Intranet 区域”中。
解决此问题的最佳方法是什么?关于现在可能导致这种情况的任何想法?
TIA!
【问题讨论】:
标签: asp.net web-services iis-6 windows-authentication