Репликация DFS и пользователь SYSTEM (разрешения NTFS)

10

Вопрос, на который у меня возникают проблемы с поиском ответа в Google или Technet ...

Влияет ли предоставление SYSTEMпользовательских разрешений на файлы и папки общего доступа DFS на репликацию DFS? (И в то время как мы находимся в этом, есть ли веская причина не давать SYSTEMразрешения на файлы, совместно используемые DFS?)

Это происходит потому, что у меня есть набор пространств имен и папок DFS, которые я не могу создать для кого-то другого, и во время устранения проблемы, когда одна реплика DFS просто не реплицировалась с другой без видимой причины, я заметил, что SYSTEMУ учетной записи не было разрешений для файлов или папок в рассматриваемой папке.

Таким образом, я установил SYSTEMполный контроль и распространил его, и наши отчеты о диагностике работоспособности DFS перешли от отображения отставания в ~ 80 файлов к отставанию в ~ 100 000 ... и начали реплицироваться, в том числе несколько файлов, которые отсутствовали. на одном сервере или другом (так что больше, чем просто изменения разрешений начали реплицироваться).

Естественно, это заставило меня задуматься о том, нужна ли DFS SYSTEMучетная запись, чтобы иметь разрешения для выполнения своей работы, или, возможно, это было просто какое-либо изменение рассматриваемого дерева папок, которое побудило DFS перейти в действие. Если это имеет значение, наши пространства имен DFS были настроены в соответствии с 2000/2003, и я только недавно закончил обновление всех серверов до 2008 R2 или 2012 (с включенным UAC, blech), но еще не дошел до повышения функциональности пространства имен DFS уровни до Server 2008.

(И бонусные баллы, если у кого-то есть официальная статья Microsoft о правах доступа к файлам NTFS и SYSTEMучетной записи, относящейся к файлам DFS или сети.)

HopelessN00b
источник
При обновлении серверов следовали ли вы руководству по переходу с FRS на DFS? microsoft.com/en-us/download/confirmation.aspx?id=580
Рекс,
@Rex Я не делал миграцию FRS -> DFS, и я рискнул бы догадаться, что какие-либо руководства, лучшие практики, здравый смысл или рациональное мышление, вероятно, не выполнялись, но мы использовали DFS (в отличие от FRS) уже довольно давно. Я не сомневаюсь, что причина, по которой он работает так плохо, заключается в том, как он был изначально настроен, а также в том, как он был перенесен. Речь шла об обновлении версии пространства имен , а не об обновлении FRS -> DFS. Я исправлю это пропущенное слово сейчас.
HopelessN00b
если бы вы выполняли какую-либо репликацию в DFS в соответствии с 2000/2003, она бы использовала бы использование FRS для репликации. DFS-R для репликации DFS не была доступна до 2003 R2. DFS на 2008 R2 больше не поддерживает FRS для репликации, и серверы 2008 R2 не могли реплицироваться с более старыми пространствами имен DFS на основе 2003, если вы не обновили все серверы до 2003 R2 (или более поздней версии) и не мигрировали на DFS-R для репликации.
Рекс

Ответы:

9

В этой теме на technet говорится, что SYSTEM нужен полный контроль. Однако это не очень официальный источник, и дальнейшее тестирование доказывает, что это неправильно .


Служба репликации DFS

Я посмотрел на службы DFS на моем компьютере Server 2008R2 с помощью Process Explorer. dfsrs.exe, служба репликации распределенной файловой системы, работает как «NT Authority \ SYSTEM». Тем не менее, он имеет SeBackupPrivilege и SeRestorePrivilege :

Снимок экрана с разрешениями dfsrs.exe

Из констант привилегий Microsoft :

SeBackupPrivilege - требуется для выполнения операций резервного копирования. Эта привилегия заставляет систему предоставлять все права доступа для чтения любому файлу, независимо от списка управления доступом (ACL), указанного для файла. Любой запрос доступа, кроме чтения, все еще оценивается с помощью ACL. 3

SeRestorePrivilege - требуется для выполнения операций восстановления. Эта привилегия заставляет систему предоставлять все права доступа для записи любому файлу независимо от списка ACL, указанного для файла. Любой запрос доступа, кроме записи, все еще оценивается с помощью ACL. Кроме того, эта привилегия позволяет вам установить любого допустимого SID пользователя или группы в качестве владельца файла.

С этими разрешениями служба репликации DFS может игнорировать любые разрешения для файлов - ей предоставляется разрешение на чтение, запись и установку разрешений для любого файла, который она пожелает.


тестирование

Я создал папку в одном из моих общих ресурсов DFS с несколькими файлами в ней, назначил свою учетную запись владельцем и удалил все разрешения, кроме моей учетной записи.

DFS реплицировал его на все остальные серверы без проблем, и все реплики имели одинаковые разрешения.

Таким образом, DFS не зависит от разрешений на репликацию файловой системы.


Я подозреваю, что в вашем случае простое внесение каких-либо изменений в файлы привело бы к тому, что DFS проснулся и увидел, что им нужна репликация. Понятия не имею, что вызвало бы эту ситуацию в первую очередь.

Грант
источник
1
Отличный ответ. Я поставлю вашу галочку и награду через 5 дней, на случай, если кто-то может прийти и возглавить это.
HopelessN00b
2
Дангит, я должен был использовать изображение в своем посте! :(
3

Согласно этой статье от Microsoft http://support.microsoft.com/kb/120929 «Системная учетная запись и учетная запись администратора (группа« Администраторы ») имеют одинаковые права доступа к файлам, но имеют разные функции».

Это означает, что системная учетная запись такая же, как у локального администратора, и она существует для целей запуска системных служб с привилегиями администратора, не требуя пароля. Процесс репликации в DFS-R выполняется с этой учетной записью.

Пользователь системы не имеет особого значения в файловой системе или в настройке DFS, отличающейся от обычного администратора. Однако это может сбить с толку, потому что администраторы Windows не всегда работают с правами администратора в зависимости от того, как была вызвана программа или оболочка, тогда как системная учетная запись, скорее всего, всегда будет работать с маркером escalated / admin. Я полагаю, что ваша установка DFS просто глючила, и изменение ACL, возможно, приводило к созданию некоторых системных вызовов или открытию / обновлению файловых дескрипторов, которые потрясли общеизвестную паутину.


источник