How can I debug a local IIS service with Visual Studio running as a non-Administrator user?
I have installed Visual Studio 2008 and am running it as a non-Administrator user.
I have a Web Application project I am developing and would like to debug it using Visual Studio. I can compile and also debug with "Visual Studio Developme开发者_C百科nt Server" without problems. But, when I select "Use Local IIS Web server" in my project properties and try to save the project, Visual Studio gives me the error: "To access local IIS Web sites, you must run Visual Studio in the context of an administrator account."
Now, if I take Microsoft's word, I must run Visual Studio by actually using an administrative account, but Microsoft's ultimatums haven't always proven to be absolute.
From other similar questions, I've added my user to the "Debugger Users" group and given the user the SeDebugPrivilege privilege. But, I cannot "Run as Administrator" since my user is not actually an administrator.
It looks like that for now, the answer is you can't.
I will delete this if a method or solution comes along.
You could use IIS Express which doesn't require admin privileges. Don't think there's a stand-alone download but you can get it as part of Web Matrix here: http://www.microsoft.com/web/webmatrix/download/
I've never tried this, but it might be worth a shot.
While logged in as an administrator, you could change the identity under which the service and/or the application pools run. Make them run under the same non-administrator account you normally use. Then when Visual Studio attempts to attach to the process, the security context will match between the debugger and the process being debugged.
I think you'd only need to change the identity under which your application pool runs.
Here's some more detail from James Kovacs' Weblog: Debugging as a Non-Admin
Is there already a website created within IIS for your project? Writing to the IIS metabase does require admin access. If you setup the website as an admin you may be able to debug it as a non-admin. One thing to try/test is to just point IIS at your website's folder and get it running, then use Visual Studio to do a process attach to the w3wp process.
精彩评论