Назад | Перейти на главную страницу

Больше проблем с совместным доступом к файлам в Windows

Это меня сейчас беспокоит. Я в процессе преобразования автономного файлового сервера, который не был присоединен к нашему домену, в использование AD Groups \ Users для общих файловых ресурсов. Этот файловый сервер использовался для использования учетных записей локальных компьютеров для разрешений на общий ресурс. Я подключил файловый сервер к домену, поэтому теперь я хочу заменить разрешения общего доступа на правильные из AD.

Может быть, мне нужно это объяснить, но по какой-то причине я не могу заставить его работать. Например, у меня есть общая папка:

\\fileserver\jsmith

В этой папке установлены разрешения для общего доступа, чтобы пользователь AD Джон Смит имел полный доступ. Разрешения NTFS (это то, что находится на вкладке «Безопасность», верно?) Установлены на следующее:

FILESERVER \ Adminstrators - Полный доступ
CREATOR OWNER - особые разрешения отмечены и выделены серым цветом
СИСТЕМА - Полный доступ, хотя он неактивен (как и другие флажки в столбце Разрешить)
FILESERVER \ Users - чтение и выполнение, список содержимого папки и чтение (все выделено серым цветом)

Насколько я понимаю (и, возможно, я ошибаюсь), пользователь Джон Смит должен иметь доступ к \\filserver\jsmith и иметь возможность открывать там любые файлы и папки, а также создавать файлы и папки.

Однако, это не так. Джон Смит получает сообщение «Доступ запрещен» при попытке доступа к этой общей папке.

РЕДАКТИРОВАТЬ: Чтобы уточнить, когда Джон Смит вводит UNC-путь к общему ресурсу (\\fileserver\jsmith) в проводнике Windows и нажав Enter, он получит сообщение Доступ запрещен.

Может, я не понимаю всего этого. Итак, каков был бы «правильный» способ выполнить то, что я хочу: пользователь или группа AD должны иметь доступ на чтение и запись к общей папке.

Пользователь «DOMAIN \ JSmith» не должен получать «Доступ запрещен» при попытке доступа к общему ресурсу, но должен получать «Доступ запрещен» при попытке создать или изменить файлы, размещенные там. Не могли бы вы пояснить, что вы имеете в виду, говоря «Джон Смит получает сообщение об отказе в доступе при попытке доступа к этой общей папке». имея в виду мое предыдущее заявление?

В общем, «Разрешения для общего доступа» всегда должны быть установлены на «Все / Полный доступ». Это неправильная функция с повреждением мозга, возникшая в те времена, когда люди могли совместно использовать папки, размещенные на томах, отличных от NTFS. (Кто-нибудь хочет спорить об этом? Хе-хе ...)

«Разрешения для общего доступа» применяются службой «Сервер». Если пользователи могут получить доступ к файлам каким-либо другим способом («Общий доступ» выше в файловой системе с другими «Разрешениями на общий доступ», файлы, экспортированные через IIS с каким-либо другим протоколом и т. Д.), То «Разрешения на общий доступ» не будут применяться. Укажите свои разрешения в разрешениях NTFS, и затем независимо от того, как пользователи получают доступ к файлам, драйвер NTFS будет применять желаемые разрешения.

В академических целях я объясню, как работают «Разрешения общего доступа» (но я все же рекомендую вам всегда устанавливать для них «Все / Полный доступ»): служба «Сервер» (которая обрабатывает экспорт «общих» папок через Протокол SMB) проверяет, что нижележащая файловая система NTFS разрешает попытки доступа пользователя (чтение, запись и т. Д.), А затем проверяет попытки доступа пользователя по параметру «Разрешения общего доступа». Если какое-либо разрешение не позволяет получить желаемый доступ, попытка доступа не удалась. Установка «DOMAIN \ JSmith» с разрешением «Полный доступ» в «Разрешения для общего доступа» не меняет нижнее разрешение NTFS. На уровне файловой системы «DOMAIN \ JSmith», член группы «DOMAIN \ Domain Users», имеет права на чтение, выполнение и список содержимого папки посредством вложенности по умолчанию «DOMAIN \ Domain Users» в «FILESERVER» \ Users "при присоединении к домену.

Вы никогда не должны указывать отдельных пользователей в разрешениях, за исключением папок, которые специально созданы только для этого пользователя, например перемещаемых папок профиля пользователя или домашних каталогов. Поскольку этот ресурс называется «JSmith», я предполагаю, что это домашний каталог. Добавьте «DOMAIN \ JSmith» с помощью «Modify» или «Full Control» (в зависимости от того, хотите ли вы, чтобы JSmith мог изменять разрешения для папки и подпапок или нет - «Full Control» даст ему это право) ACL папки, и все будет в порядке.

Если общая папка предназначена для каких-то других целей (например, для «служебной роли» или совместного использования пользователями), правильный путь(тм) для применения разрешения необходимо создать группу, которая описывает роль, связанную с доступом (например, «Отдел закупок»), предоставить группе разрешение на папку NTFS для ресурса (например, «Изменить») и поместите соответствующих пользователей в эту группу.

Когда меняется должность или происходит смена должности, вам нужно только поместить «нового человека» в соответствующие группы, и их доступ к ресурсам будет гарантирован. Если вы указали отдельных пользователей в разрешениях, то единственный способ обеспечить доступ для нового пользователя - это посетить каждый ресурс и добавить новые разрешения (возможно, удалив старое разрешение, если роль задания изменилась). Если у вас не будет хорошей документации о том, где вы применили различные разрешения к отдельным пользователям, вы никогда не сможете создать нового пользователя с «такими же правами», как у существующего пользователя, без проведения масштабных исследований всех ваших ресурсов.

Даже если группа будет состоять из одного члена, все равно создайте группу. Вы поблагодарите себя позже, когда вам придется назначить кого-то еще в группу.

Редактировать:

Список управления доступом (ACL) - это список записей управления доступом (ACE), применяемых к ресурсу. ACL - это то, что вы видите как на вкладке «Безопасность» листа свойств, так и в диалоговом окне «Дополнительно». Каждая строка ACL - это ACE. (Я подумал, что добавлю в него "ACE", на случай, если вы где-нибудь увидите это в документации и задаетесь вопросом, что это значит ...)

Вы видите одно и то же на вкладке «Безопасность» и в диалоговом окне «Дополнительно», только представленное по-разному (с более подробной информацией в диалоговом окне «Дополнительно»).

У меня возникают проблемы с объяснением, почему вы можете видеть сообщение «Доступ запрещен» при доступе к общему ресурсу, как вы описываете. Когда JSmith вошел в систему на своем клиентском компьютере со своей учетной записью домена, а компьютер FILESERVER присоединен к домену, вы должны не получать сообщение «Доступ запрещен». Вы уверены, что JSmith вошел в систему со своей учетной записью домена на клиентском компьютере?

Есть ли у необходимых учетных записей пользователей как минимум Traverse Directory, если общие ресурсы не находятся в корне диска?

Например: если у вас есть папка с именем D: \ Users, а затем папки в ней, то эти учетные записи должны иметь возможность перемещаться по D: \ и D: \ Users, иначе они получат отказ в доступе.

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

Я не говорю, что это правильный способ делать что-то, но я регулярно вижу общие для всех RW, со всей безопасностью разрешений NTFS для общей папки.

Обновление: удалены некорректные утверждения после отзыва от Эвана.

Когда вы работаете с общими папками, вам нужно подумать о двух наборах разрешений:

Во-первых, разрешения на сам общий ресурс. Это как вышибала у дверей ночного клуба. Если подключающийся пользователь не имеет разрешений на этом уровне, ему будет отказано в доступе независимо от того, какие разрешения есть в самой папке.

Во-вторых, у вас есть права доступа к папке. Если у пользователя достаточно доступа для доступа к общему ресурсу, но нет доступа к папке, ему будет отказано. Папки никоим образом не наследуют разрешения от общего ресурса.

На обоих уровнях вы можете использовать локальные или доменные учетные записи. На типичном файловом сервере у вас не будет никаких локальных учетных записей, кроме тех, которые требуются Windows.

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

Что вам нужно сделать, вместо того, чтобы настраивать отдельный общий ресурс для каждого пользователя, так это настроить один общий ресурс верхнего уровня под названием «Пользователи». Добавьте к нему достаточные разрешения на уровне общего доступа, чтобы все пользователи вашего домена могли получить к нему доступ. Затем в этом общем ресурсе создайте подкаталог для каждого пользователя. Не делитесь этим, просто установите для него необходимые разрешения NTFS. Затем пользователи будут обращаться к нему через \\ servername \ users \ username.