我一定错过了一些非常基本的东西。这是场景
我们有一个具有以下设置的 ASP.NET 2.0 WebService (Server 2003):
- SSL
- 综合安全
- 阿诺姆。访问已禁用
- 在 NETWORK SERVICE 下运行
- 暴露(即可以从公共互联网访问)
- 服务使用应用程序用户名/密码从数据库返回数据,不调用另一个 web 服务
- 尽管我也尝试过切换,但没有在服务上设置模拟。
我们有一台与 LAN 断开但使用空中卡的客户端计算机(相同域)。用户使用其 AD 用户名/密码/域登录笔记本电脑。
在代理级别的代码中,我们有service.PreAuthenticate
= true 我们也尝试过使用这两者DefaultCredentials
并DefaultNetworkCredentials
获得相同的结果。
- .NET windows 客户端与 VPN 一起使用
- .NET windows 客户端得到 401: Unauthorized WITHOUT VPN (注意:不返回内部异常)
- IE 可以在有或没有 VPN 的情况下工作。
我的假设(可能不正确)是,如果我将 DefaultNetworkCredentials 传递给代理类,它将传递域凭据以进行身份验证。IE 显然正在做一些魔术来完成这项工作。
我错过了什么?