Мені потрібно надати дозвіл декількох локальних папок для конкретної локальної групи. Я використовую 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-адміністраторами), я отримую таке:
Виняток виклику "SetAccessRule" з "1" аргументом (ами): "Деякі або всі ідентифікаційні посилання не могли бути перекладені C: проекти dsc.quickstart sitecore-web-role install.ps1: 16 char: 1 + $ Acl.SetAccessRule ($ Ar) + ~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo: NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId: IdentityNotMappedException
Мені цікаво, чи буде ця функція працювати лише з користувачами, а не з групами. Дякуємо за допомогу заздалегідь.
BUILTIN\a-group
і при запуску сценаріюBUILTIN\IIS_IUSRS
це просто працює.