Folder permissions in IIS7

How do I set a folder to write in IIS7?

The website in question in on my local server (full control). I have already given “Network” full control over the folder, but the site still refuses to write to it.

What is the app pool running as? Default isn’t NETWORK SERVICE but some other APP_POOL_IDENTITY account or something. We typically setup a NETWORK SERVICE app pool as it is a bit easier to manager, especially when you’ve got random XP/2003 boxes running stuff.

It is running as “NetworkService”.

As in the official NT AUTHORITY\NETWORK SERVICE account some other new account called NetworkService?

How did you assign the permissions – full control sounds like you shared it not assigned NTFS permissions, which is what you need to do.

Could also be a file ownership thing, are you modifying a file or creating a new one?

Thanks for the attention wwb. Here are the full facts, for your consideration:

AppType: PHP
AppPoolMode: Integrated
AppPoolIdentity: Built-in Account -> NetworkService
OSType: Windows Vista Professional / IIS7 (app testing)
FolderPerms: Security -> Edit -> Add -> NETWORK SERVICE, Full Control

App is just writing a file, though it will eventually overwrite said file later.

AppPool was recycled and the whole of IIS restarted. The app still fails to write to the folder.

Hrm, how is PHP running here? I seem to recall that Fast CGI might not actually run as the app pool context.

Surefire way to see what is up is to use Process Explorer and see what is hitting the file system in that folder.


I got it working. After much googling, here is how it’s done.

First, whatever pool your app uses needs to be set to “No managed code” (assuming it’s a php only site). Second, give write permissions to the IUSR account (not IUSER_<MACHINE> or IWAM_<MACHINE>). It immediately started working.