Home > Windows にまつわる e.t.c.

PowerShell でフォルダ ACL に RW 権限を追加する


Windows Server でフォルダーを新規作成すると、上位 ACL を継承するので、通常 Users は RO 権限しか許可さません。

 

GUI で RW に設定変更するのは簡単なのですが、PowerShell で設定変更するのは意外と面倒だったりします。

面倒なので、関数化しました。

##########################################################################
# ACL 設定
##########################################################################
function AddRwAclLocalUsers($AllowDirectory){

    # RW 許可を与えるユーザー(ローカル Users)
    $BUILTIN_Users = "BUILTIN\Users"

    # 現在の ACL 取得
    $ACL = Get-Acl $AllowDirectory

    # パーミッション設定
    # 引数:ユーザー名,アクセス権,下位フォルダへ継承,下位オブジェクトへ継承,継承の制限,アクセス許可
    $Permission = ($BUILTIN_Users,"Modify","ContainerInherit, ObjectInherit", "None","Allow")

    # ACL 作成
    $AddACL = New-Object System.Security.AccessControl.FileSystemAccessRule $Permission

    # ACL セット
    $ACL.SetAccessRule($AddACL)

    # ACL 適用
    $ACL | Set-Acl $AllowDirectory
}

 

関連情報

関数を PowerShell プロンプトで実行する
http://www.vwnet.jp/Windows/PowerShell/2016100401/UseFunctionInPsPrompt.htm

 

 

back.gif (1980 バイト)

home.gif (1907 バイト)

Copyright © MURA All rights reserved.