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

Невозможно назначить групповые разрешения с помощью ICACLS в Windows Server 2012

Я не могу заставить icacls принять мою группу для добавления разрешений. Я использую оболочку повышенной мощности со следующей командой:

icacls 'C:/foo' /grant:r 'Group Foo':f

Я получаю следующую ошибку:

Invalid parameter "Group Foo"

Я тоже пробовал использовать SUID, но это тоже не помогло. Я также пробовал 'Domain \ Group Foo'

У меня есть куча файлов, которые я пытаюсь разрешить группе использовать. Как правильно добавлять массовые разрешения в Windows Server 2012?

-- РЕДАКТИРОВАТЬ --

E:\> icacls "E:/Contact Numbers.xlsx" /grant:r "Users":f
Invalid parameter "Users"

Используйте двойные кавычки вместо одинарных:

C:\>mkdir foo

C:\>icacls 'C:/foo' /grant:r 'Users':f
'Users': No mapping between account names and security IDs was done.
Successfully processed 0 files; Failed processing 1 files

C:\>icacls "C:/foo" /grant:r "Users":f
processed file: C:/foo
Successfully processed 1 files; Failed processing 0 files

Я пропустил, что вы использовали Powershell, а не cmd. Powershell очень странно смешивает внешние команды и цитирование. Вот пара примеров использования Powershell.

PS v2: чтобы передать цитаты на icacls вы должны избегать их с помощью каретки. Обратите внимание на необходимость экранирования скобок вокруг буквы "F".

PS C:\>icacls `"C:/foo`" /grant:r `"Users`":`(F`)

PS v3: Версия 3 предлагает новую escape-последовательность --% (тире, тире, процент), который экранирует оставшуюся часть строки. Это упрощает даже сложные внешние параметры.

PS C:\>icacls --% "C:/foo" /grant:r "Users":F

Это не позволит мне комментировать поток jscott, но для того, чтобы ваша команда работала правильно в Powershell, вам нужно будет добавить кавычки вокруг всего параметра, как такового:

    C:\> icacls .\foo /grant:r "Users:F"

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

    C:\> icacls .\foo /grant:r "Remote Desktop Users:(OI)(CI)(F)"

В случае сомнений всегда заключайте в кавычки весь параметр. Надеюсь это поможет! :)