Управление доступом
Для управления доступом к папкам в пространстве имен с помощью утилиты samba-tool используется группа подкоманд dfsn access.
| См. описание последовательности настройки пространства имен в разделе «Настройка DFSN». |
Общие сведения
Управление доступом в пространстве имен основано на двухуровневой модели безопасности, которая разделяет управление видимостью элементов пространства имен и фактический контроль доступа к файловым ресурсам.
Разрешения на уровне папок используются для контроля их видимости в рамках пространства имен и не влияют на фактический доступ к содержащимся в папках целевым папкам и файлам в них. Они определяют, будут ли папка и целевые папки в ней видны пользователю, если в пространстве имен включен механизм отображения на основе разрешений (Access-based enumeration): если механизм включен, пользователи видят только те папки и целевые папки в пространстве имен, на доступ к которым у них есть явные разрешения.
Фактический контроль доступа к файловым ресурсам осуществляется на уровне файловых серверов, на которых размещаются целевые папки. При доступе учитывается комбинация разрешений на уровне файловой системы и разрешений общих папок, установленных на конкретном целевом объекте, к которому клиент пытается получить доступ. Это означает, что даже если пользователь может видеть папку и целевую папку в пространстве имен, его реальные возможности по работе с файлами (чтение, изменение, удаление) определяются разрешениями, настроенными на сервере, где физически расположены данные.
Выдача разрешений, определяющих видимость папки
Формат вызова:
samba-tool dfsn access grant <dfs_path> <account_names> [options]
В качестве обязательных аргументов ожидаются:
-
путь к папке в пространстве имен в формате UNC-имени (например, \\elles.inno.tech\namespace1\documents);
-
одно или несколько (через запятую без пробелов) имен учетных записей пользователей и групп в формате
sAMAccountNameс доменом (например, ELLES\User1,ELLES\Group1) или без домена (например, User1,Group1).
Подкоманда делает папку видимой для пользователя или группы в пространстве имен (тип доступа — enumerate).
Если для пространства имен установлен флаг --enable-access-based-enumeration=Yes, пользователю или участникам группы видны только папки, для которых у них явно настроены разрешения.
Параметры
Параметры вызова:
-
--server=DFSSERVERHOST— имя хоста или полное доменное имя (FQDN) сервера пространства имен, используя соединение с которым будет осуществлено изменение; применяется только при необходимости явно указать сервер в нештатных ситуациях.
Примеры
Пример выдачи пользователю и группе разрешений, определяющих видимость папки в пространстве имен:
samba-tool dfsn access grant "\\\\elles.inno.tech\\namespace1\\documents" "ELLES\\User1","ELLES\\Group1" ... Account name Access type ============ =========== ELLES\User1 enumerate ELLES\Group1 enumerate
Получение информации о разрешениях, определяющих видимость папки
Формат вызова:
samba-tool dfsn access get <dfs_path> [options]
В качестве обязательного аргумента ожидается путь к папке в пространстве имен в формате UNC-имени (например, \\elles.inno.tech\namespace1\documents).
Подкоманда возвращает список учетных записей пользователей и групп с указанием наличия (тип доступа — enumerate) или отсутствия (тип доступа — none) у них разрешений, определяющих видимость папки в пространстве имен.
Отзыв разрешений, определяющих видимость папки
Формат вызова:
samba-tool dfsn access revoke <dfs_path> <account_names> [options]
В качестве обязательных аргументов ожидаются:
-
путь к папке в пространстве имен в формате UNC-имени (например, \\elles.inno.tech\namespace1\documents);
-
одно или несколько (через запятую без пробелов) имен учетных записей пользователей и групп в формате
sAMAccountNameс доменом (например, ELLES\User1,ELLES\Group1) или без домена (например, User1,Group1).
Подкоманда отзывает у пользователя или группы разрешения, позволяющие видеть папку в пространстве имен (тип доступа — none).
Удаление пользователей и групп из списка управления доступом (ACL) для папки
Формат вызова:
samba-tool dfsn access remove <dfs_path> <account_names> [options]
В качестве обязательных аргументов ожидаются:
-
путь к папке в пространстве имен в формате UNC-имени (например, \\elles.inno.tech\namespace1\documents);
-
одно или несколько (через запятую без пробелов) имен учетных записей пользователей и групп в формате
sAMAccountNameс доменом (например, ELLES\User1,ELLES\Group1) или без домена (например, User1,Group1).
Подкоманда удаляет пользователя или группу из списка управления доступом (Access Control List, ACL) папки. При этом оставшиеся разрешения в ACL могут обеспечивать пользователю или группе доступ к папке даже после выполнения данной операции.