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

Разрешить видеть, существует ли файл, но не читать данные

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

Я хочу иметь возможность устанавливать разрешения, поэтому:

  1. Пользователь может определить, существует ли файл
  2. Пользователь может писать в папку.
  3. Никаких других разрешений (нельзя читать / удалять и т. Д.).

-спасибо Алекс.

Зависит от версии Windows ... просто глядя на Win7, «Список содержимого папки» - это отдельный элемент на основной странице разрешений. Другие элементы: Полный доступ, Изменение, Чтение и выполнение, Чтение, Запись и Особые разрешения.

Только что проверил: у XP Pro такие же параметры.

Таким образом, установка удаления всех разрешений, кроме «Запись» и «Список содержимого папки», должна сделать то, что вам нужно (вам также может потребоваться «Изменить», если вам нужно обновить существующие файлы).

Предполагая, что вы говорите о Windows ...

Я думаю, что наиболее логичный и эффективный способ сделать это - установить разрешения для папки (и вам придется использовать кнопку «Дополнительно» на вкладке «Безопасность» в свойствах папки), чтобы разрешить просмотр папки / выполнения файла. , Разрешить создание файлов / запись данных и Разрешить создание папок / добавление данных.

К сожалению, List Folder / Read Data - это одно разрешение, поэтому вы не можете разделить его на уровне разрешений из Windows. Пользователи смогут записывать и добавлять файлы и папки, но не могут перечислять папки или читать файлы (или удалять их).

Однако хорошим решением было бы вместо того, чтобы разрабатывать свое приложение для проверки наличия файлов, проверки наличия папок и помещения каждого файла для защиты в его собственную папку. Если вы удалите разрешения List Folder / Read Data из папок внутри основной папки, вы можете запретить своему приложению открывать файлы внутри этих подпапок, но разрешить им видеть существование подпапок.

Я могу сделать это в Windows Server 2003, но в Windows 2008 с теми же правами доступа к файлам это не работает. Я не могу понять почему. Ниже приведены мои настройки из Server 2003, которые делают то, что вы описали. Я использую его со своим FTP, чтобы пользователи не могли читать и писать в один и тот же каталог. Я сделал это после того, как порно люди нашли мой FTP однажды, и я вдруг стал порно-сервером. Это предотвращает такое использование, даже если кто-то имеет логин на машине.

Структура каталогов Pub Входящие Несколько папок Несколько файлов Исходящие Несколько папок Несколько файлов

Откройте Свойства при входящем и выберите пользователя, в моем случае моя учетная запись пользователя FTP. Флажок Список содержимого папки, запись
Щелкните Advanced. Снимите флажок Разрешить наследуемые разрешения и позвольте ему добавить текущие настройки. Для учетной записи пользователя FTP отредактируйте настройки и снимите все флажки, кроме ОТКАЗАТЬ удалять подпапки и файлы и ОТКАЗАТЬ удаление. (Применить к этой папке и подпапкам выбирается над списком разрешений) Нажмите ОК. Теперь ДОБАВИТЬ пользователя и добавьте этого ЖЕСТКОГО ПОЛЬЗОВАТЕЛЯ. На этот раз Checkbox Traverse Folder / Execute File, List Folder / Read file, Read Attributs, Read Extended Attributes, Read Permissions. нажмите ОК. Теперь ДОБАВИТЬ пользователя и снова добавьте этого ТОГО ЖЕ ПОЛЬЗОВАТЕЛЯ. На этот раз установите флажок «Создать файлы / Запись данных», «Создать файлы / Добавить данные», «Записать атрибуты / Записать расширенные атрибуты». Щелкните ОК.

Теперь просто нажмите ОК, чтобы выйти из ящиков.

Как я уже сказал, он отлично работает на моем Windows 2003 Server. У меня он отлично работал на моем сервере Windows 2000. Я не могу заставить его работать на моем сервере Windows 2008 R2.