Реклама

Немного о share и NTFS permissions

Хочу немного рассказать, как грамотно настроить разрешения на файловом сервере.

Права на сетевые ресурсы бывают двух типов, это share permissions – то есть разрешение на доступ именно по сети, и NTFS permissions – разрешения на доступ к файлу или папке.

Немного теории о правах NTFS. Каждый объект в системе содержит два ACL (access control list), которые называются DACL и SACL. Discretionary Access Control List и System Access Control List. Первый ACL контролирует доступ к файлу, второй настройки аудита файла. Оба этих листа доступа содержат записи ACE – access control entry. DACL содержит SID (Security Identifier) пользователей и групп и права доступа, а SACL из объекта системного аудита, и записываемых действий. По умолчанию аудит отключен.

Когда мы задаём доступ к сетевой папке, то как правило назначаем share и ntfs permissions. Права у нас назначаются,  исходя из минимальных назначенных права. Например если share permissions у нас только “чтение” для всех, то несмотря на то, что на папку назначены права “полный доступ”, у всех будут права только только чтение. И соответственно наоборот.

Поэтому в примере ниже, правильный способ назначения share permissions.

По умолчанию мы предоставляем всем полный сетевой доступ.

Следующим этапом создаём группы, в которые впоследствии будем добавлять пользователей. Например test_folder_read, и test_folder_write. Добавляем эти группы на доступ в папку, и выставляем права. При выставлении полных прав на доступ к папке, никогда не ставьте галочку “полные права”, всегда достаточно чтения и изменения. Связано это с тем, что галочка “полные права” даёт возможность изменять атрибуты папки и права на неё, что согласитесь для пользователей совсем лишнее.

Теперь, сочетание прав у нас следующее: хоть сетевой доступ у нас предоставлен всем, права доступа в папку ограниченны группами read и write, и те кто не добавлен в них, доступа в папку иметь не будут.

В windows server есть очень интересная фича, которая называется ABE – access base enumerate, или перечисление на основе доступа. Включить её можно установить роль “файловые службы”, и зайдя в остнастку “управление общими ресурсами и хранилищами”

При её включении, если у человека нет доступа на просмотр этой папки, он не будет видеть её в проводнике.

Часто возникает потребность, дать доступ к вложенной папке, таким образом, что бы файлы в папках верхних уровней были не видны. Допустим у нас есть вложенные друг в друга папки folder1, folder2 и folder3, и нам нужно дать полный доступ к folder3, но не давая доступ на чтение к folder1 и folder2. Делается это следующим образом. Заходим на вкладку безопасность, дополнительно папки folder1. Выбираем пользователя, которому нужно заходить в эту папку, но не нужно видеть её содержимое. (при условии что включен ABE), в противном случае файлы будут видны, но к ним не будет доступа. Выставляем права “чтение” и применяем их только к этой папке.

Применительно к folder2 делаем то же самое. А на папку folder3 выставляем разрешения для нужной группы или пользователя. В конечном итоге, пользователь будет заходить в папки folder1 и folder2, и увидит в них только одну папку – folder3.

Еще частым бывает вопрос – на folder1 у нас прописаны права для групп, которые наследуются. Как пользователю оставить доступ к папкам folder1 и folder2, но запретить доступ к папке folder3 не затрагивая других пользователей? Для этого сделаем следующее. Заходим в настройки безопасности, вкладка дополнительно папки folder3. Нажимаем кнопку “отключить наследования”, и становимся перед выбором – очистить все права доступа, или преобразовать наследованные права доступа в явные. Во втором случае это значит, что все права останутся такие же, какие и были, но больше не будут наследоваться, и мы спокойно можем их менять.

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

Если у Вас есть вопросы, задавайте их на форуме, или ниже в комментариях.

6 комментариев

  1. Сергей242 Сергей242
    24.12.2019    

    Что то прям очень жидко для темы с таким многообещающим названием.

    Можно было бы и более полно развернуть тему.

    • Иван Иван
      31.12.2019    

      Так написано же – немного)

      • Сергей242 Сергей242
        31.12.2019    

        Непонятно зачем вообще тогда стоило начинать

        • Иван Иван
          31.12.2019    

          Извините пожалуйста, больше не буду. Ещё есть какие нибудь пожелания?

  2. Сергей 242 Сергей 242
    31.12.2019    

    Разумеется есть как им не быть.

    7к рублей например хочу чтобы на яндекс мани выслали.

    Ну потому что почему бы и нет?

    • Иван Иван
      31.12.2019    

      Не вопрос, только их надо заработать

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *