问题
I'd like to deploy a web application to IIS 6 on a remote server using a Web Deploy. I succeed to publish by an admin account of server but couldn't publish by a non-admin account. it failed with message : Unauthorized(401)
I've found two different answer about this problem.
scott guthrie said, "The non-admin scenarios enable administrators to configure Web Deploy on a server, and then delegate a subset of deployment capabilities to developers who do not have admin accounts on the production server" (http://weblogs.asp.net/scottgu/archive/2010/09/13/automating-deployment-with-microsoft-web-deploy.aspx)
Troy Hunt said, "The account publishing must have admin rights on the server" (http://www.troyhunt.com/2010/11/you-deploying-it-wrong-teamcity_24.html)
What is right? I hope to know how to deploy with Web Deployment Remote Agent Service on IIS 6 by a non-admin account.
回答1:
Unfortunately, you can't. From later on in ScottGu's blog post:
If you try and follow the above steps on Windows 7, Windows Vista, or Windows Server 2003, though, you’ll notice that the IIS Management Service (and its icon within the IIS admin tool) isn’t available. Instead you need to follow a slightly different set of steps to enable the Web Deploy service.
...
Using this approach [Web Deploy Agent] won’t allow you to enable “delegated access” (which allows non-admin accounts to deploy – and which I’ll cover in more depth in my next blog post) – but will allow those with an account with admin permissions to deploy to the machine.
回答2:
The difference is in the version of IIS and Scott's examples are all for IIS 7.x
I'm in the same boat, I wish it wasn't so but unfortunately that's the limitation with the old version.
I've just tried to locate the original reference re admin on IIS6 but I can't seem to find it. Hopefully someone will dig it up.
来源:https://stackoverflow.com/questions/6438750/how-to-allow-non-admin-user-to-deploy-web-applications-on-iis-6-using-web-deploy