如何使用以非管理员用户身份运行的Visual Studio调试本地IIS服务?

时间:2010-07-16 18:59:12

标签: visual-studio debugging iis administrator non-admin

我已安装Visual Studio 2008,并以非管理员用户身份运行。

我正在开发一个Web应用程序项目,并希望使用Visual Studio进行调试。我可以编译并使用“Visual Studio Development Server”进行调试而不会出现问题。但是,当我在项目属性中选择“使用本地IIS Web服务器”并尝试保存项目时,Visual Studio会给出错误:“要访问本地IIS网站,必须在管理员帐户的上下文中运行Visual Studio 。“

现在,如果我接受微软的话,我必须通过实际使用管理帐户来运行Visual Studio,但微软的最后通is并不总是被证明是绝对的。

从其他类似的问题中,我已将我的用户添加到“Debugger Users”组,并为用户提供了SeDebugPrivilege权限。但是,我不能“以管理员身份运行”,因为我的用户实际上并不是管理员。

4 个答案:

答案 0 :(得分:11)

现在看来,答案是你不能

如果出现方法或解决方案,我会删除它。

答案 1 :(得分:2)

您可以使用不需要管理员权限的IIS Express。不要认为有一个独立的下载,但你可以在这里将它作为Web Matrix的一部分: http://www.microsoft.com/web/webmatrix/download/

答案 2 :(得分:1)

我从未尝试过这个,但它可能值得一试。

以管理员身份登录后,您可以更改运行服务和/或应用程序池的标识。使它们在您通常使用的同一个非管理员帐户下运行。然后,当Visual Studio尝试附加到进程时,安全上下文将在调试器和正在调试的进程之间匹配。

我认为您只需要更改运行应用程序池的标识。

以下是James Kovacs的博客中的更多细节:Debugging as a Non-Admin

答案 3 :(得分:0)

是否已在IIS中为您的项目创建了一个网站?写入IIS元数据库确实需要管理员访问权限。如果您将网站设置为管理员,则可以将其作为非管理员进行调试。 尝试/测试的一件事是将IIS指向您网站的文件夹并使其运行,然后使用Visual Studio对w3wp进程执行进程附加。