Правильно установить права доступа к файлу после перемещения - PullRequest
2 голосов
/ 14 февраля 2012

Я передаю файл из одного места в другое. Проблема в том, что когда я переношу файл в новое место, разрешения для файла будут такими, какими они были до того, как я переместил его.

Предположим, у меня есть пользователь "A", пользователь "B", папка "F1" и папка "F2"

Пользователь «А» имеет доступ к файлам в папке «F1». Я выполняю этот код в c #, чтобы переместить мои файлы из папки «F1» в папку «F2»

File.Move(filePath, copyPath2);

В папке «F2» пользователь «А» не имеет доступа к файлам. Когда я смотрю на разрешение после перемещения, все разрешения для файлов в папке «F2», устанавливаются разрешения из папки «F1».

Есть ли способ, когда я перемещаю файлы из одного местоположения в другое в c #, чтобы удалить разрешения?

Я нахожусь в Windows 2008 R2 и причина, по которой я пытаюсь это сделать, написана на этом посте . Это проблема с модулями ARR и дескриптором файла IIS

1 Ответ

0 голосов
/ 15 февраля 2012

Посмотрите эту тему на форумах MSDN:

http://social.msdn.microsoft.com/Forums/hu-HU/netfxbcl/thread/51694aec-90d2-4d90-8e9a-af0ab91cc610

Вот простая адаптация к вашему вопросу:

FileInfo fileInfo = new FileInfo(copyPath2);
FileSecurity fileSecurity = fileInfo.GetAccessControl(AccessControlSections.Audit);     
fileSecurity.SetAuditRuleProtection(false, false);
fileInfo.SetAccessControl(fileSecurity);
...