我有一个连接到外部 Web 服务的应用程序。
该应用程序运行良好,但对于一个客户,我无法通过他们的代理。
由于代理是在我开始使用的计算机上配置的
<binding useDefaultWebProxy="true" ... >
有了这个我收到错误消息:
The remote server returned an error: (407) Proxy Authentication Required.
然后我尝试添加:
<security mode="Transport">
<transport proxyCredentialType="Windows"
realm="" />
</security>
但错误信息没有改变
通过一些谷歌搜索,我发现默认设置是不向代理发送凭据。以下设置应该启用发送凭据:
<system.net>
<defaultProxy useDefaultCredentials="true" />
</system.net>
但是,我现在收到另一条错误消息:
Insufficient permissions for setting the configuration section 'defaultProxy'.
Request for the permission of type 'System.Net.WebPermission, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
我不明白这个消息。该应用程序正在本地计算机上运行,因此它应该具有完全信任。检查caspol -m -l
并显示
1. All code: Nothing
1.1. Zone - MyComputer: FullTrust
现在我没有想法了。
我不知道如何将 WebPermission 添加到在本地计算机上运行的组件中,我不知道这是否解决了代理身份验证的原始问题。
其他一些我不知道是否重要的细节。
- Windows 7 64 位
- webservice 使用 https(我可以通过 Internet Explorer 访问该服务)
- 用户是本地管理员