2010-12-16 12 views
7

मैं वर्तमान में Vista 32-bit का उपयोग कर रहा हूं। मैं विंडोज सुरक्षा समूह "हर कोई" कैसे जोड़ूं और निर्देशिका और उसके सभी उप-निर्देशिकाओं और सभी फाइलों पर पूर्ण नियंत्रण कैसे दूं? क्या कोई शक्तिशक्ति स्क्रिप्ट है जिसका मैं उपयोग कर सकता हूं?निर्देशिका में "हर कोई" समूह जोड़ें और इसकी सभी उप-निर्देशिका

धन्यवाद!

उत्तर

8

मैंने मार्टोना के स्निपेट पर विस्तार किया है और सभी फ़ोल्डरों और उप-फ़ोल्डरों तक पहुंच प्रदान करने में सक्षम था। यहां मेरा कोड है -

$FilesAndFolders = gci "c:\data" -recurse | % {$_.FullName} 
foreach($FileAndFolder in $FilesAndFolders) 
{ 
    #using get-item instead because some of the folders have '[' or ']' character and Powershell throws exception trying to do a get-acl or set-acl on them. 
    $item = gi -literalpath $FileAndFolder 
    $acl = $item.GetAccessControl() 
    $permission = "Everyone","FullControl","Allow" 
    $rule = New-Object System.Security.AccessControl.FileSystemAccessRule $permission 
    $acl.SetAccessRule($rule) 
    $item.SetAccessControl($acl) 
} 
+0

इसके लिए धन्यवाद। अच्छी तरह से काम करता है, और यदि कोई सोच रहा है कि "गेट-आइटम-लिटरलपैथ" यूएनसी पथ पर काम करता है, जिसका अर्थ है कि आप रिमोट मशीनों पर अनुमतियां लागू कर सकते हैं। – Patrick

4
$acl = Get-Acl c:\mydir 
$permission = "Everyone","FullControl","Allow" 
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule $permission 
$acl.SetAccessRule($rule) 
$acl | Set-Acl c:\mydir 
+0

धन्यवाद लेकिन यह केवल शीर्ष फ़ोल्डर में सभी समूह को जोड़ा गया है और FullControl चेकबॉक्स भी चेक नहीं किया गया है। मैं क्या खो रहा हूँ? – tempid

+0

शायद यह सवाल का अच्छा जवाब नहीं हो सकता है, लेकिन मुझे यह उदाहरण आज उपयोगी लगता है, इसलिए इसे वोट देना। – yzorg

3

कभी-कभी "मूल" पावरशेल तरीका आवश्यक रूप से सबसे अच्छा तरीका नहीं है। इस तरह के कुछ के लिए मैं अभी भी icacls.exe का उपयोग करेंगे। याद रखें कि अच्छा ओल 'exes PowerShell में बहुत अच्छा काम करता है। बस निर्देशिका आप सेट और निष्पादित करने के लिए चाहते हैं कि सीडी:

icacls $pwd /grant "Everyone":(OI)(CI)F 

यह हर कोई (अनुमति विरासत के माध्यम से) नीचे की ओर वर्तमान निर्देशिका के लिए पूर्ण पहुँच दे देंगे। यह तब तक काम करना चाहिए जब तक डीआईआर संरचना में हर किसी के लिए कोई स्पष्ट अस्वीकार न हो।

+0

नीचे लिपियों का उपयोग करके सभी खाते जोड़े गए, लेकिन उन्हें कोई अनुमति नहीं दी गई। यह दृष्टिकोण मेरे लिए काम किया ... – BrianH

+0

अगर मैं जानता हूं कि जादू कोड का क्या मतलब है तो मैं इसका उपयोग करूंगा। '(ओआई) (सीएफ) 'मैं एक देव हूं जो देवताओं के साथ मदद करने की कोशिश करता है, न कि व्यवस्थापक स्वचालित चीजों को स्वचालित करने की कोशिश कर रहा है, इसलिए जादू जैसे" पढ़ने "या" पूर्ण नियंत्रण "शक्तियों की तुलना में डरावना है। – yzorg