IIS上的远程调试 - 访问被拒绝的噩梦!

时间:2009-09-07 12:26:45

标签: asp.net asp.net-mvc visual-studio-2008 debugging

我们这里有两个Win2k3服务器,一个是域控制器,另一个是我们的网络服务器。

我在网络服务器上运行ASP.NET MVC Web应用程序设置为IIS中的网站。

我已将x86远程调试工具复制到网络服务器,登录管理员帐户并运行msvsmon。我将登录到工作站的用户添加到权限列表中。

在VS2008中打开了Web应用程序项目并转到附加到进程,这是我的设置:

Transport: Default
Qualifier: OURDOMAIN\AdminUsername@OURWEBSERVER
Attach To: Managed Code

Selected: w3wp.exe

点击附加后,窗口会闪烁几秒钟,然后我会:

Unable to attach to the process. Access is denied.

我尝试右键单击msvsmon并使用运行方式在我登录我的计算机的同一帐户下运行它,但仍然没有区别。

但是,如果我将附加到字段更改为自动:本机代码,它会很好地附加,但我无法调试任何托管的.NET代码。

这让我感到困惑 - 任何想法?

安东尼

5 个答案:

答案 0 :(得分:3)

答案 1 :(得分:1)

您的问题并不清楚,但远程调试要求您登录到远程计算机上的用户也存在于本地计算机上。您基本上必须在您的开发机器上创建一个本地帐户(是的,这听起来倒退)。我不确定它是否尊重域帐户。

答案 2 :(得分:0)

代码是在服务器上预编译还是在未编译的.cs文件中编译?

答案 3 :(得分:0)

  

我试过右键单击msvsmon和   使用Run As在同一个下运行它   帐户,因为我登录了我的机器,   但仍然没有区别。

您是否在服务器中以管理员身份添加了该帐户?我会尝试,而不是做Run As,我会有效地使用该帐户登录。

在不同域中运行服务器和客户端时,图表会略微变粗。在这些情况下,我使用的技巧是在两台机器上创建一个具有相同名称和相同密码的本地帐户。在两台计算机上使用相同的帐户登录(它实际上不是同一个帐户),然后在服务器上启动远程调试程序,在客户端上启动VS.如果此方案中的任何计算机运行的是Windows XP,则必须在“安全选项”下将“本地安全策略”,“网络访问:本地帐户的共享和安全模型”更改为“经典 - 本地用户自行验证身份”

答案 4 :(得分:0)

我还没有看到跨域工作。与@ paul-mrozowski一样,只要运行调试器服务器的用户与您的本地用户匹配并且您能够正确地对机器进行身份验证,我就可以在同一个域上执行此操作。最后一点可能受到防火墙配置的阻碍。