Powershell目录文件夹管理权限的继承和指定方法(windowspowershell在哪个目录下)这样也行?

随心笔谈9个月前发布 admin
200 00
🌐 经济型:买域名、轻量云服务器、用途:游戏 网站等 《腾讯云》特点:特价机便宜 适合初学者用 点我优惠购买
🚀 拓展型:买域名、轻量云服务器、用途:游戏 网站等 《阿里云》特点:中档服务器便宜 域名备案事多 点我优惠购买
🛡️ 稳定型:买域名、轻量云服务器、用途:游戏 网站等 《西部数码》 特点:比上两家略贵但是稳定性超好事也少 点我优惠购买

文章摘要

这篇文章介绍了如何在PowerShell中管理文件系统的访问权限。主要步骤包括: 1. 创建文件夹并获取其当前访问控制列表(ACL)。 2. 添加权限给当前用户和所有管理员,包括读写权限以及是否继承文件系统的权限。 3. 设置不继承访问权限,以确保修改后的文件权限不会自动应用到子目录中。 文章重点描述了如何通过PowerShell脚本实现对文件访问权限的精细控制。


# create folder
$Path=’c:\PermissionNoInheritance’
$null=New-Item -Path $Path -ItemType Directory -ErrorAction SilentlyContinue

# get current permissions
$acl=Get-Acl -Path $path

# add a new permission for current user
$permission=$env:username, ‘Read,Modify’, ‘ContainerInherit, ObjectInherit’, ‘None’, ‘Allow’
$rule=New-Object -TypeName System.Security.AccessControl.FileSystemAccessRule -ArgumentList $permission
$acl.SetAccessRule($rule)

# add a new permission for Administrators
$permission=’Administrators’, ‘FullControl’, ‘ContainerInherit, ObjectInherit’, ‘None’, ‘Allow’
$rule=New-Object -TypeName System.Security.AccessControl.FileSystemAccessRule -ArgumentList $permission
$acl.SetAccessRule($rule)

# disable inheritance
$acl.SetAccessRuleProtection($true, $false)

# set new permissions
$acl | Set-Acl -Path $path

© 版权声明

相关文章