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

Управление разрешениями Windows на общем ресурсе Samba из linux

У меня Debian 8 с Samba 4 в качестве члена домена AD. Контроллер домена - это Windows Server 2008. Общие ресурсы могут обрабатывать разрешения Windows - я использую IDMAP backend = rid, так как я не могу добавить uidNumber и gidNumber в запись учетной записи AD.

Я могу отображать и устанавливать разрешения ACL с помощью getfacl и setfacl, но настройки R-W-X не могут устанавливать точные разрешения Windows (владение, чтение атрибутов, установка разрешений, полный контроль ...)

Итак, есть ли возможность управлять (или, по крайней мере, показывать) расширенные разрешения Windows для общего файла / папки из Linux?

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

В конце концов выяснил сам.

Разрешения Windows хранятся в «Расширенных атрибутах». Необработанные данные этих атрибутов могут быть отображены xattr из пакета Debian python-xattr:

xattr -l <local_path>

Чтобы отображать и управлять этими разрешениями, вы можете использовать smbcacls из пакета Debian smbclient:

smbcacls //localhost/share <path_within_share>

В выходных данных приведенной выше команды есть некоторые загадочные значения, такие как CI, OI, I, FULL, ... Прекрасное объяснение этих значений здесь: https://lists.samba.org/archive/samba-technical/2010-June/071390.html