Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

NTFS Ordnerberechtigungen - Vererbung der Berechtigungen aktivieren und deaktivieren

Frage Entwicklung Batch & Shell

Mitglied: Restock

Restock (Level 1) - Jetzt verbinden

27.08.2014, aktualisiert 29.08.2014, 8351 Aufrufe, 13 Kommentare

Hallo Zusammen,

ich stehe mal wieder vor einem Problem mit der Powershell.

Ich muss bei sehr vielen Ordner die Vererbung aktivieren um eine neue Berechtigung durch die komplette Struktur durcherben zu können. Anschließend muss ich das Skript wieder "rückwärts" laufen lassen um die Vererbung wieder zu deaktivieren. Hier geht es allerdings erst einmal nur um den ersten Teil.

Folgenden Quellcode habe ich mir bis jetzt zusammengestellt/gesucht:

01.
$Paths = get-content "C:\Ordnerliste.txt" 
02.
foreach($path in $Paths){ 
03.
    $acl = get-acl $path 
04.
    $isProtected = $false 
05.
    $preserveInheritance = $false 
06.
    $acl.SetAccessRuleProtection($isProtected, $preserveInheritance) 
07.
    Set-Acl $path -AclObject $acl 
08.
}
Das Skript läuft auch ohne eine Fehlermeldung in der Powershell durch, nur verändert sich in meiner Ordnerstruktur an der gewünschten Stelle einfach gar nichts. Ich habe auch schon wiederholt mit den true und flase werten herumprobiert, allerdings brachte dies auch keine Besserung.

Ich arbeite mit dem Skript momentan noch in einer Teststruktur, also her mit den Ideen, noch kann nichts kaputtgehen

Danke Euch!
Mitglied: emeriks
27.08.2014 um 12:56 Uhr
Hi,
lass mich raten: Du musst irgendwo ran, z.B. Berechtigungen anpassen, wo Du z.Z. auch als Admin nicht ran kommst?

E.
Bitte warten ..
Mitglied: colinardo
27.08.2014, aktualisiert um 13:11 Uhr
Moin,
machst du am besten mit takeown und icacls:
http://www.administrator.de/forum/ordnerfreigaben-einzelner-ordner-komp ...
wenn du in einigen Ordnern keine Zugriffsrechte hast. Mit Powershell wirst du da sonst auf einige Hindernisse treffen, ich spreche aus Erfahrung

Grüße Uwe
Bitte warten ..
Mitglied: Restock
27.08.2014 um 13:15 Uhr
Admin Rechte habe ich auf alle Ordner, ich könnte auch jeden Ordner einzeln anklicken und die Berechtigungen ändern, bzw. den Hacken setzen. Allerdings ist mir das bei knapp 800 Ordnern zu viel Aufwand.

Hintergrunde ist folgender. Wir haben eine Ordnerstruktur wo bestimmte Dokumente abgelegt werden. In dieser Struktur, darf allerdings nur in der untersten Ebene von den Usern etwas geändert werden (zb. Ordner erstellen). Aus diesem Grund haben wir die Berechtigungen hier aufgebrochen. Dumm nur wenn man jetzt dort an allen etwas Ändern muss..
Bitte warten ..
Mitglied: emeriks
LÖSUNG 27.08.2014, aktualisiert 29.08.2014
Erkläre doch mal bitte etwas genauer:
Wenn Du überall Adminrechte hast, warum musst Du dann erst überall die Vererbung ändern um sie dann später in einem Folgeschritt wieder rauszunehmen? Was willst Du denn zwischenzeitlich machen?

E.
Bitte warten ..
Mitglied: Restock
27.08.2014 um 14:15 Uhr
Im groben sieht meine Ordnerstruktur momentan so aus:
01.
Standort 
02.
	Abteilung 1 
03.
		Daten 1 
04.
			Eigener Ordner A 
05.
			Eigener Ordner B 
06.
		Daten 2 
07.
			Eigener Ordner A 
08.
			Eigener Ordner B 
09.
	Abteilung 2 
10.
		Daten 1 
11.
			Eigener Ordner A 
12.
			Eigener Ordner B 
13.
		Daten 2 
14.
			Eigener Ordner A 
15.
			Eigener Ordner B
Das ganze 19 mal und mit noch mehr "Abteilungen","Daten" und "Eigener Ordner" Ordner.

Das Problem an der ganzen Sache ist, dass unsere User hier nur unter dem Ordner "Daten" eigene Ordner erstellen, löschen und bearbeiten dürfen. Also habe ich vor ca. 2 Jahren hier die Berechtigungen aufgebrochen und das Löschen und Ändern nur auf dieser Eben erlaubt. Darüber haben die User nur Lesezugriff sodass die Ordnerstruktur nicht versehentlich oder unberechtigt geändert werden kann.

Da seit dieser Zeit das System durch einige Hände gegangen ist die leider nicht genau aufgepasst haben, wurden auf einigen Ordnern falsche Berechtigungen gesetzt oder weggenommen, sodass nun nicht mehr wirklich viel korrekt ist. Manche User können zu viel.. manche zu wenig usw.

Ich möchte nun die Vererbung wieder einschalten, alle Rechte entfernen und anschließend wieder richtig durcherben. Danach breche ich die Berechtigungen wieder auf und Erbe bis zu dem Ornder "Daten" das Leserecht, sodass auf der untersten Ebene die Schreibberechtigungen erhalten bleiben.

Mag sein das mein Denkansatz auch komplett falsch ist... Falls ja, ich bin für jede Idee offen.
Bitte warten ..
Mitglied: colinardo
LÖSUNG 27.08.2014, aktualisiert 29.08.2014
wie du einen Reset der Permissions mit icalcs machst kannst du ja unter oben geposteten Link nachlesen.
So läuft das selbe hier mit Powershell:
01.
$ordner = "\\Server\Share\Ordner" 
02.
foreach($path in (dir $ordner -Recurse |?{$_.PSIsContainer})){ 
03.
    $acl = get-acl $path.FullName 
04.
    $acl.SetAccessRuleProtection($false, $false) 
05.
    $acl.Access | ?{$_.IsInherited -eq $false} | %{$acl.RemoveAccessRule($_)|out-null} 
06.
    Set-Acl $path.Fullname -AclObject $acl 
07.
}
Bedenke aber das Powershell ab einer Pfadtiefe mit mehr als 260 Zeichen Probleme bekommt. Deshalb empfehle ich bei solchen Änderungen immer icacls.
Bitte warten ..
Mitglied: emeriks
LÖSUNG 27.08.2014, aktualisiert 29.08.2014
Ah ja. Du willst also die Berechtigungen nochmal "nach unten durchdrücken", wie mit der GUI "Alle Berechtigungen für untergeordnete Objekte durch vererbbare Berechtigungen von diesem Ordner ersetzen" ?

Mal abgesehen davon, dass das mit Deinem Ansatz so wohl nicht ganz funktionieren wird, wäre es vielleicht sinnvoller, ein Script zu schreiben, welches generell in dieser Struktur die Berechtigungen setzt, wie sie sein sollen. Ich nehme doch an, dass die Struktur standardisiert ist, mit wiederkehrenden Unterordnernamen usw.
Da sollte es doch kein Problem sein, dass über Schleifen in einem Script abzubilden.

Der Ansatz mit dem einfachen "Vererbung an/ausschalten" bringt nichts, weil die expliziten (nicht geerbten), falschen ACE's dadurch nicht verändert werden.

E.
Bitte warten ..
Mitglied: emeriks
27.08.2014 um 14:34 Uhr
Hi Colinardo,
inwiefern berücksichtigt das Script, dass durchaus gewünschte, ursprünglich gesetzte explizite ACE's dabei erkannt werden?

E.
Bitte warten ..
Mitglied: colinardo
27.08.2014, aktualisiert um 14:37 Uhr
Zitat von emeriks:

Hi Colinardo,
inwiefern berücksichtigt das Script, dass durchaus gewünschte, ursprünglich gesetzte explizite ACE's dabei
erkannt werden?
meiner Meinung wollte er das doch nicht, er wollte doch erst mal alle gesetzten Rechte durch vererbte ersetzen. oder ??
Bitte warten ..
Mitglied: Restock
27.08.2014 um 14:58 Uhr
Richtig ich möchte die beiden in der GUI zu sehenden Hacken setzen.

Wenn ich Dich richtig verstehe, dann werden durch diese Aktion und das anschließende "von oben erben" die Berechtigungen die momentan in der GUI auf "<nicht geerbt>" stehen dadurch nicht entfernt/resettet.

Könnte ich das lösen indem ich vorher alle Berechtigungen (außer Admin und System) lösche? Das Skript dazu hätte ich noch hier rumfliegen...

Ja es ist eine komplett standardisierte Struktur die sich in jedem Standort wiederholt. Deswegen ist deine Idee vielleicht wirklich die bessere. Ich werde nochmal etwas recherchieren.
Bitte warten ..
Mitglied: colinardo
LÖSUNG 27.08.2014, aktualisiert 29.08.2014
obiges Script aktiviert die Vererbung und entfernt dabei alle expliziten Berechtigungen, so dass nur noch vererbte Rechte erhalten bleiben. Das ganze rekursiv auf alle Unterordner.

oder
icacls "d:\Ordner" /Reset /t /c /q
macht das selbe ...
Bitte warten ..
Mitglied: emeriks
LÖSUNG 27.08.2014, aktualisiert 29.08.2014
"vom übergeordneten Objekt erben" heißt doch bloß, dass die ACL um ACE's aus dem übergeordneten Ornder, welche für die Vererbung freigegeben sind, ergänzt wird. Vorhandene ACE werden dadurch nicht geändert. Wenn man dann das Erben der Rechte wieder abschaltet, dann werden nur die geerbten ACE's wieder aus der ACL entfernt und der Zustand ist wie vorher.

Wenn man an übergeordneten Ordner sagt, "durch vererbbare Berechtigungen.....ersetzen", dann heißt das, dass die ACL's der untergeordneten Objekte geleert und mit vererbaren ACE's aus dem übergeordneten Ordner gefüllt werden. Dann kann aber mächtig daneben gehen, wenn Du eine Struktur hast, wo Du an einigen Stellen bewusst die Vererbung "abgeschaltet" und nur explizite ACE's gesetzt hast, dann würdest Du hier durch das "Ersetzen von Oben" diese ACE löschen. Wenn Du dann die Vererbung wieder aufhebst, dann hast Du die Wahl, die vererbten zu entfernen oder diese als nicht-geerbte (ich nenne diese immer "explizite") drin zu lassen. So oder so. Es würde dann beim vormaligen Vorhandensein von gewünschten "Ausnahmen" diese nicht mehr enthalten. Und ich nehme an, das ist nicht, was Du willst.

E.
Bitte warten ..
Mitglied: Restock
27.08.2014 um 15:34 Uhr
Okay alles klar - jetzt ist der Groschen gefallen. Habs verstanden! :D

Danke schonmal für Eure Hilfe. Ich denke nochmal über alles nach und schaue dann wie ich es am Ende angehe. Ich poste mein Ergbniss dann
Bitte warten ..
Ähnliche Inhalte
Microsoft
NTFS Berechtigungen - Vererbung
gelöst Frage von BierkastenMicrosoft11 Kommentare

Hallo liebe Community, so langsam bin ich echt ratlos mit dem Vergeben von Berechtigungen. Deswegen Frage an euch liebe ...

Windows Server
NTFS Berechtigungen auf Datei Ebene sollen nicht vererbt werden ohne die Vererbung zu deaktivieren
gelöst Frage von der--moWindows Server5 Kommentare

Hallo Liebes Forum, ich stehe etwas auf dem Schlauch und hoffe ihr könnt mir helfen. Ich habe einen Hauptordner ...

Windows Server
NTFS-Berechtigungen mit vielen Unterordnern, Vererbung unklar
Frage von PhilzipWindows Server6 Kommentare

Hallo zusammen, auf einem Windows Server 2008 R2 habe ich eine Freigabe mit über 10.000 Unterordnern. Die Vererbung ist ...

Windows Server
Setzen bzw. Vererbung von NTFS Berechtigungen in verschachtelten Ordnerstrukturen
Frage von mhappeWindows Server2 Kommentare

Hallo, ich habe aktuell ein paar Probleme mit dem korrekten Setzen von NTFS Berechtigungen auf einem Windows Server 2012 ...

Neue Wissensbeiträge
Windows 10

Windows 10 Fall Creators Update - Neue Funktion Hyper-V Standardswitch kann ggf. Fehler bei Proxy Configs verursachen

Erfahrungsbericht von rzlbrnft vor 3 StundenWindows 101 Kommentar

Hallo Kollegen, Da wir die Gefahr lieben, haben wir bei einigen Usern nun mittlerweile das Creators Update drauf. Einige ...

Sicherheit

TLS-Zertifikat und privater Schlüssel von Microsofts Dynamics 365 geleakt

Information von Penny.Cilin vor 5 StundenSicherheit

Microsoft hat versehentlich das TLS-Zertifikat inklusive dem privaten Schlüssel seiner Business-Anwendung Dynamics 365 geleakt. TLS-Zertifikat und privater Schlüssel von ...

Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 1 TagViren und Trojaner2 Kommentare

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 1 TagRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Firefox Profieles im Roaming
gelöst Frage von Hendrik2586Netzwerkmanagement17 Kommentare

Hallo liebe Leute. :) Ich hab da ein kleines Problem, welches anscheinend nicht unbekannt ist. Wir nutzen hier in ...

LAN, WAN, Wireless
Brainstorming, einfachste Option 1 getrenntes LAN (mit WAN zugang)
Frage von 132954LAN, WAN, Wireless13 Kommentare

Hi, folgendes: Wir bekommen eine Glasfaser Leitung, Und das sollte Optional so aussehen: Ein Modem/Router für das WAN, ein ...

Netzwerkgrundlagen
Hi eine blöde frage. xD
Frage von 132954Netzwerkgrundlagen12 Kommentare

Also: Habe 2012 r2 essentials neuinstalliert, allerdings installiert diese version ja gleich diesen gangen AD kram mit, den hab ...

Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...