Мне нужно предоставить разрешения для нескольких локальных папок для конкретной локальной группы. Я использую System.Security.AccessControl.FileSystemAccessRule . И это выглядит так:

$aclFolders =  Join-Path -Path $env:windir -ChildPath "\temp\"
$group = "sql\IIS_IUSRS"
$Acl = Get-Acl $aclFolders
$Ar = New-Object System.Security.AccessControl.FileSystemAccessRule($group, "FullControl", "ContainerInherit,ObjectInherit", "None", "Allow")
$Acl.SetAccessRule($Ar)
Set-Acl $aclFolders $Acl

sql\IIS_IUSRS - локальная группа. Если я запускаю скрипт на нем (или даже с sql\Administrators), я получаю следующее:

Исключение, вызывающее "SetAccessRule" с аргументом (ами) "1": "Некоторые или все ссылки на идентификаторы не могут быть переведены". В C:\projects\dsc.quickstart\sitecore-web-role\install.ps1: 16 char: 1 + $ Acl.SetAccessRule ($ Ar) + ~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo: NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId: IdentityNotMappedException

Мне интересно, будет ли эта функция работать только с пользователями, а не с группами. Заранее благодарны за Вашу помощь.

0