Securing Files and Folders
In addition to providing permissions for your Notification Services instance and any external applications, you must also manage access to files and folders used by your applications.
When you configure an instance of Notification Services, you either create an instance configuration file (ICF) or configure the instance using Notification Services Management Objects (NMO).. When you develop an application, you either create a application definition file (ADF) or define the application using NMO.
The files that contain the XML or NMO code used to configure instances and define applications might contain information that could compromise security and must be secured.
Some applications also have run-time files. For example, if an application uses the file system watcher event provider, the provider requires an XML schema definition language (XSD) file that documents the event schema. If using XSL transforms (XSLT) to format notifications, the application requires XSLT files that specify how the notifications are formatted. These files must be accessible by the account that the Notification Services engine runs under, but must be secured.
To ensure that applications can access run-time files and that the instance configuration and application definitions are secure, consider separating the run-time files from other files and then customizing security at the folder level.
The account that the engine runs under must have access to run-time folders. This includes access to the folders where content formatter files, event provider schema files, or custom component files are located; where events are picked up; and where notifications are posted.
While you must grant the engine access to these folders, you also must limit access to them so that malicious users cannot submit event data, pick up notifications, or read files. For example, if you use the file system watcher event provider or a similar provider that reads event data dropped to a folder, you must make sure that the engine is able to read files dropped to that folder, that authorized users and applications can drop files to that folder, but that no malicious users can read or write files in that folder.
Depending on the level of security you require, you can secure these files in one or both of the following ways:
- You can use NTFS permissions to restrict access to the folders and all of their files. For more information about NTFS permissions, see your Microsoft Windows documentation.
- If you are concerned about unauthorized disclosure of data, you can use the Encrypting File System (EFS) to encrypt specific files and folders. For more information about EFS, see your Windows documentation.