1

すべてのファイル サーバーの profile$ フォルダーに「CreatorOwner」権限を追加するスクリプトを作成しようとしています。

つまり、「CreatorOwner」権限を「\FileServer\Profile$」に追加します

コマンドと構文を教えてもらえますか?

質問があれば聞いてください。

4

2 に答える 2

2

これを行う1つの方法は、WMIパスとUNCパスを使用することです。

$AccessRule = New-Object  system.security.accesscontrol.filesystemaccessrule("CREATOR OWNER","FullControl","ContainerInherit, ObjectInherit","InheritOnly","Allow")
$profileshare = Get-WmiObject Win32_Share -ComputerName fileserver -Filter "name = 'profile$'"
$driveletter, $path = $profileshare.path
$path = $path.TrimStart("\")
$ACL = Get-Acl "\\fileserver\$driveletter`$\$path"
$ACL.SetAccessRule($AccessRule)
Set-Acl \\fileserver\$driveletter`$\$path -AclObject $ACL

サーバー名のリストがある場合は、次のようにすることができます。

$servers = @("fileserver1","fileserver2","fileserver3")
$AccessRule = New-Object  system.security.accesscontrol.filesystemaccessrule("CREATOR OWNER","FullControl","ContainerInherit, ObjectInherit","InheritOnly","Allow")
$servers | % {
$profileshare = Get-WmiObject Win32_Share -ComputerName $_ -Filter "name = 'profile$'"
$driveletter, $path = $profileshare.path
$path = $path.TrimStart("\")
$ACL = Get-Acl "\\$_\$driveletter`$\$path"
$ACL.SetAccessRule($AccessRule)
Set-Acl \\$_\$driveletter`$\$path -AclObject $ACL
}
于 2013-01-12T00:53:47.663 に答える
0

これはそれを行います:

#Change the CSV file path

$Permissions = Import-Csv C:\Test.CSV -delimiter '|'
ForEach ($line in $Permissions)
$inherit = [system.security.accesscontrol.InheritanceFlags]"ContainerInherit, 
ObjectInherit"

$propagation = [system.security.accesscontrol.PropagationFlags]"None" 

$acl = Get-Acl $line.Path
$acl.SetAccessRuleProtection($True, $False)
$accessrule = New-Object system.security.AccessControl.FileSystemAccessRule("domain users", "Read", $inherit, $propagation, "Allow")

#Adding the Rule
$acl.AddAccessRule($accessrule)

#Setting the Change
Set-Acl $line.Path $acl 

CSV ファイルの外観

\SRV01\Folder1\Folder2 など

于 2014-04-26T06:11:40.500 に答える