Fayllar va papkalarga ruxsatlarni o'zgartirish
Keyin fayl va papka ruxsatlarini qanday yangilashimiz kerak? Agar biz yangi foydalanuvchiga faylga o'qish huquqini berishni xohlasak nima bo'ladi? Buni PowerShell-da bajarish uchun ushbu to'rt bosqichli jarayonni bajarish oson.
Mavjud ACL qoidalarini yuklab olish
Yangi FileSystemAccessRule qoidalarini yaratish
Mavjud ruxsatnomalar to'plamiga yangi ACL qoidasini qo'shish
Mavjud faylga yoki papkaga yangi ACL-ni qo'llash Set-ACLQoidani o'zi ishlab chiqish uchun biz uni yaratishimiz kerak FileSystemAccessRule shunga o'xshash konstruktorga ega: Identity String, FileSystemRights, AccessControlType.
$ ACL = Get-ACL -Path "Test1.txt" $ AccessRule = New-Object System.Security.AccessControl.FileSystemAccessRule ("TestUser1", "Read", "Allow") $ ACL.SetAccessRule ($ AccessRule) $ ACL | Set-Acl -Path "Test1.txt" (Get-ACL -Path "Test1.txt"). Kirish | Format-Table IdentityReference, FileSystemRights, AccessControlType, IsInherited, InheritanceFlags -AutoSize
Yuqoridagi jarayonda ko'rinib turganidek, uchun ruxsatlarni va tuzuvchilarni o'zgartirish tez va oson FileSystemAccessRule ob'ekt to'g'ridan-to'g'ri.
Ruxsatnomalarni yangi ob'ektga nusxalash
Biz o'rnatganimizdan beri TestUser1 bizning faylimizga o'qish huquqiga ega bo'lish mumkin, agar biz o'sha ruxsatnomani boshqa faylga nusxalashni xohlasak nima bo'ladi? Yangi kirish qoidasini qo'shish bo'yicha biz allaqachon yuqoridagi ishlarni bajarganimiz uchun, biz PowerShell quvur liniyasidan foydalanib, ruxsatlarni bitta ob'ektdan boshqasiga o'tkazishimiz mumkin.
Get-ACL -Path "Test1.txt" | Set-ACL -Path "Test2.txt" (Get-ACL -Path "Test2.txt"). Kirish | Format-Table IdentityReference, FileSystemRights, AccessControlType, IsInherited, InheritanceFlags -AutoSize
Fayl yoki jildga ruxsatnomalarni olib tashlash
Ushbu ruxsatlarni qo'shgandan so'ng, biz bunga qaror qildik TestUser1 ga Test1.txt fayl ruxsat bermaslik kerak. Qoidani olib tashlashdagi farq shundaki, biz aniq qayta yaratishimiz kerak FileSystemAccessRule biz olib tashlamoqchimiz. Bu qanday ruxsatni olib tashlash haqida noaniqlikni olib tashlaydigan ruxsatlarni olib tashlashning aniq vositasi. Biz bunga ruxsatni qanday qo'shganimizga juda yaqinlashamiz.
$ ACL = Get-ACL -Path "Test1.txt" $ AccessRule = New-Object System.Security.AccessControl.FileSystemAccessRule ("TestUser1", "Read", "Allow") $ ACL.RemoveAccessRule ($ AccessRule) $ ACL | Set-Acl -Path "Test1.txt" (Get-ACL -Path "Test1.txt"). Kirish | Format-Table IdentityReference, FileSystemRights, AccessControlType, IsInherited, InheritanceFlags -AutoSize
Yuqorida ko'rib turganingizdek, biz olib tashladik read ushbu ob'ektdan ruxsat. The synchronize ruxsat - bu operatsion tizim tomonidan fayl va papka ruxsatlari ustidan to'g'ri nazoratni ta'minlash uchun foydalanadigan maxsus ruxsat.
Do'stlaringiz bilan baham: |