Как известно любому, кто имел дело с разрешениями файлового сервера, NTFS имеет интересную конструктивную особенность / недостаток, известный как проблема перемещения / копирования.
Как объяснено в этой статье MS KB, разрешения для папки или файла не наследуются автоматически от родительского, если папка перемещается, а источник и место назначения находятся на одном томе NTFS. Разрешения наследуются, если папка копируется или если источник и место назначения находятся на разных томах.
Вот краткий пример:
У вас есть две общие папки на одном томе NTFS, которые называются «Технические специалисты» и «Менеджеры». Группа технических специалистов имеет RW-доступ к папке «Техники», а группа «Менеджеры» имеет RW-доступ к папке «Менеджеры». Если кто-то имеет доступ к обоим и перемещает подпапку из папки «Менеджеры» в папку «Техники», перемещенная папка по-прежнему будет доступна только пользователям в группе «Менеджеры». Группа «Техники» не может получить доступ к подпапке, даже если она находится в папке «Техники» и должна наследовать разрешения сверху.
Как вы понимаете, это вызывает звонки в службу поддержки, заявки и потраченные впустую циклы на решение этих проблем с конечными пользователями, не говоря уже о том, что у вас есть множество разрешений, которые вы можете получить, если пользователи часто перемещают папки между различными защищенными папками / областями такой же объем.
Вопросы следующие:
Как лучше всего обойти этот недостаток конструкции NTFS и как вы справляетесь с этим в своей среде?
Я знаю, что в связанной статье базы знаний говорится о некоторых ключах реестра для изменения поведения проводника Windows по умолчанию, но они являются клиентскими и требуют, чтобы пользователи имели возможность изменять разрешения, что, как я думаю, в большинстве сред не является стартером, если вы хотите сохранить контроль над разрешениями вашего файлового сервера (и своим разумом как системного администратора).
Мой подход состоит в том, чтобы не использовать права доступа к файлам на уровне файлов / каталогов; используйте разрешения на уровне файлового ресурса и установите для диска с данными файловой системы всего сервера значение «Полный доступ для всех» (что становится спорным).
С годами (10+) я обнаружил, что разрешения NTFS более сложны и приводят к большему количеству ошибок. Если разрешения установлены неправильно или наследование нарушено, вы раскрываете данные, и их трудно найти и увидеть. Кроме того, как вы говорите, вы сталкиваетесь с проблемой перемещения / копирования.
Места, где вы должны использовать ACL на уровне каталога / файла; Я не знаю другого решения, кроме как регулярно проверять состояние здоровья.
Что ж, это не совсем недостаток. Это правило для обработки разрешений при перемещении файлов применяется, по крайней мере, с бета-версии 2 NT3.1 (хотя, очевидно, не наследования, поскольку оно было добавлено только в Windows 2000). Это примерно так же хорошо известно, как и любая функция Windows. Я с большим сочувствием отношусь к вашей точке зрения, так как мало кто из нас не сгорел из-за этого на одном этапе. Но это то, что сисадмин быстро усваивает.
JR
Мы используем NTFS с NT 3.51, и хотя мы видели эту «проблему» (как и почти все), она не доставляла нам особых проблем:
Я могу придумать обходные пути:
Отказ от ответственности - я исхожу из фона unix (и реализовал последний для исправления различных недостатков разрешений - он кажется неприятным, но выполняет свою работу), поэтому может быть гораздо лучшее исправление.
Когда я перехожу в качестве администратора, я использую xcopy / s / e / c / h / r / k / y - все, кроме владения файлом и ACL, что означает, что наследование ACL срабатывает автоматически. Никогда не приходилось иметь дело с ситуацией, когда пользователь все же переехал.
Я использую групповую политику / политику безопасности / файловую систему, чтобы отслеживать сложные разрешения. (НИКОГДА не используйте в политике «заменить разрешения»).
Запланируйте CACLS для сброса всех разрешений в течение ночи с последующим gpupdate / force для повторного применения разрешения из политики. Работает как шарм.
Начиная с Windows 7 (или, возможно, Windows Vista), разрешения для папки или файла ДОЛЖНЫ наследоваться от родительского, если папка перемещена, а источник и место назначения находятся на одном томе NTFS - если файл или папка копируются через проводник. В более ранних версиях ОС вы можете использовать Far manager - он позволяет включить наследование разрешений от места назначения (наряду с множеством других функций). Хотя для обычного пользователя Far может показаться неприятным.
Очень простой обходной путь - просто заархивировать файлы и распаковать их в целевой каталог.