0

I'm using Cruise Control.Net on Windows Server 2008 R2. The windows service (ccnet) is configured to run under MYDOMAIN\unittest. When I log in as MYDOMAIN\unittest, I do not have permissions to delete files that were created by the ccnet building process.

The security settings on one of these unremoveable files gives full access to SYSTEM and local Administrators and read-only access to local Users. The domain account, DFW\unittest, does not have permission to remove or overwrite these files.

There is quite a bit of complexity involved in the chain of processes in the build process. The ccnet service running as MYDOMAIN\unittest launches nant.exe which launches msbuild.exe which runs the C# compiler and friends.

I want to be able to log in as MYDOMAIN\unittest on our build machine to re-run parts of the build and investigate problems. But, I'm always bumping into problems with these files that are not owned by MYDOMAIN\unittest. By the way, I've already added MYDOMAIN\unittest to the local Administrators group on the build machine. I am still forced to run cmd.exe as administrator before I can overwrite or delete the files.

What configuration should I alter so that the files created by our automated build can be overwritten by the unittest identity?

1 Answer 1

1

Have you checked that

1) the service is currently running as \mydomain\unittest , ie if it has been changed recently has the service been restarted.

2) the files where created by the service when it was running as \mydomain\unittest

3) this is not some sort of UAC issue, ie you may have permission to the files or directory, but not until you elevate your privilege. See MS Technet for more info.

4) that any process run by or used by ccnet are also being run as MYDOMAIN\unittest. (eg You mention using nant, if it is installed as a service which is running as system you may get the problems you mention).

2
  • 1) the service identity has not changed for months. 2) yes, the files were created when it was running as MYDOMAIN\unittest. 3) I'll google UAC to find out what you mean. 4) nant is not a service, only ccnet. Apr 15, 2011 at 16:56
  • Thank you, sgmoore!! UAC was the problem. I had to remove MYDOMAIN\unittest from the local Administrators group. Then, reboot the machine (just to be sure the credentials were updated in the service). Finally, I had to add MYDOMAIN\unittest to the IIS_IUSRS group so that the build could make changes in C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files. Apr 15, 2011 at 18:09

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .