【问题标题】:C# Web Service ImpersonationC# Web 服务模拟
【发布时间】:2009-03-11 12:01:11
【问题描述】:

如果我在具有 identity="someID" 的 Web 服务中启用模拟...由于 Web 服务是 MTA 应用程序,应用的模拟可能应用于工作线程,而不是实际调用该方法的线程...我想您可能会收到拒绝访问错误...没有问题地进行模拟..只需在 webconfig 中启用它即可..我必须对我的功能进行哪些更改才能做一些聪明的事情?

<identity impersonate="true" userName="DomainName\UserName" 
                         password="ClearTextPassword" />

Web.config 中的&lt;identity&gt; 元素支持可选的用户名和密码属性,允许您配置特定的固定身份以供您的Web 服务模拟。这显示在以下配置文件片段中...... 我还需要写什么?

System.Diagnostics.Process[] p = System.Diagnostics.Process.GetProcesses(); 
p.GetExccutiong();
Console.WriteLine();

【问题讨论】:

  • 请问:“验证”中的痛点是什么?这是设置openid吗?如果您对此有任何反馈,我相信网站所有者很乐意听到。
  • 我必须添加 "i g n o "verfi" re this" 这个才能通过验证...它一直要求描述我的问题...而且我必须输入图像字符至少 5 次...我想如果有垃圾邮件,版主总是可以删除它...是的,这是一个 opneid..
  • 您是否见过身份正确流动的实际问题?自 .NET 1.0 以来就一直存在这种情况,因此他们很可能已经修复了其中的大部分错误。

标签: c# web-services


【解决方案1】:

IMO,配置 Web 服务身份的最佳方式是通过主机 - 例如 IIS。在 IIS 中,您可以通过应用程序池身份(like in this answer))进行配置。不需要纯文本密码,也不需要 hacky 代码。

【讨论】: