Альтернатива SetNamedSecurityInfo, чтобы заставить файл обновить его наследуемые разрешения - PullRequest
1 голос
/ 18 февраля 2010

У меня проблема с тем, что мы создаем файл в temp и затем перемещаемся в каталог нашего приложения, и мы обнаружили, что перемещенный файл не наследует разрешения от его новой родительской папки.

Я знаю, что могу использовать File.Copy (поскольку создание нового файла унаследует разрешения), но по соображениям производительности мы не хотим этого делать.

Сайт, указанный выше, предлагает использовать SetNamedSecurityInfo, к которому я могу получить доступ, используя PInvoke подход . Однако я подумал, что может быть какой-то способ достичь этого с помощью основного API .NET, например, нового FileInfo ("C: \ Test.txt"). GetAccessControl (), как и в статье выше, уже четыре года.

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

1 Ответ

1 голос
/ 22 февраля 2010

После некоторого тестирования вот код, с которым я собираюсь:

...