【问题标题】:Use windows authentication with ASP.Net AJAX通过 ASP.Net AJAX 使用 Windows 身份验证
【发布时间】:2009-03-03 19:36:44
【问题描述】:
我正在使用带有 Web 服务的 ASP.Net 开发我的第一个应用程序,但我遇到了身份验证问题。至少我认为这是问题所在。
当我在本地以调试模式运行应用程序时,它工作正常。当我在 IE 7 中以调试模式(通过 IIS)运行它时,它甚至可以工作。但是当我有一个同事在他们的机器上运行它(从我的 IIS)时,它就不起作用了。查询活动目录以查找用户时,会出现此错误:
Sys.Net.WebServiceFailedException:服务器方法“GetCurrentUser”失败并出现以下错误:System.Runtime.InteropServices.COMException - 发生操作错误。
我需要做什么才能让这个远程工作?
【问题讨论】:
标签:
asp.net
ajax
authentication
active-directory
【解决方案1】:
确保 IE 正确地将区域识别为 Intranet,以便它会自动发送它的用户名。如果不是,您需要在 IE 设置中手动将 URL 添加到 Intranet 区域。
这应该可以解决它,根据您的配置,您可能需要添加到您的 web.config
你的 web 服务的 web.config 是什么
【解决方案2】:
IIS 中网站的身份验证设置是什么?除非它设置为集成 Windows 身份验证,否则不太可能是权限问题。如果您想排除身份验证,请将身份验证方法更改为匿名访问并让您的同事重试。
此外,如果您在 web.config 中指定要模拟的用户,并且在 Active Directory 连接字符串中使用不同的用户名,则可能会导致错误,但尚不清楚这是否会导致您的问题。