Ich habe ein Szenario mit einem Windows-Dateiserver, in dem der "Eigentümer" Berechtigungen an eine Gruppe von Benutzern der folgenden Art vergeben möchte:
\\server\dir1\dir2\dir3
: lesen, schreiben und ausführen\\server\dir1\dir2
: keine Berechtigungen\\server\dir1
: keine Berechtigungen\\server
: lesen und ausführen
Nach meinem Verständnis ( Update : Dieser gesamte Absatz ist falsch!) Ist dies nicht möglich, da allen übergeordneten Verzeichnissen in einer Verzeichniskette die Read & Execute
Berechtigung erteilt werden muss, damit das Betriebssystem das untergeordnete Verzeichnis "sehen" kann Verzeichnisse und kommen zu ihnen. Ohne diese Berechtigung kann man nicht einmal erhält die Sicherheitskontext - Token beim Versuch , das verschachtelte Verzeichnis zugreifen, auch wenn Sie vollen Zugriff auf das Unterverzeichnis haben.
Wir suchen nach Möglichkeiten, dies zu umgehen, ohne die Daten von \\server\dir1\dir2\dir3
nach zu verschieben \\server\dir4
.
Eine Problemumgehung, an die ich gedacht habe, bei der ich mir jedoch nicht sicher bin, ob sie funktionieren wird, ist das Erstellen einer Art Link oder Junction, auf \\server\dir4
die verwiesen wird \\server\dir1\dir2\dir3
. Ich bin nicht sicher, welche der verfügbaren Optionen (falls vorhanden) für diesen Zweck funktionieren würde, wenn der Benutzer keine Read & Execute
Berechtigung für \\server\dir1\dir2
oder hat \\server\dir1
, aber soweit ich weiß, sind die Optionen folgende:
- NTFS Symbolic Link,
- Kreuzung,
- Harte Verbindung.
Also die Fragen:
- Ist eine dieser Methoden geeignet, um mein Ziel zu erreichen?
- Gibt es andere Methoden zum Verknüpfen oder indirekten Verweisen auf ein Verzeichnis, die ich oben nicht aufgeführt habe und die möglicherweise geeignet sind?
- Gibt es direkte Lösungen,
Read & Execute
bei denen der Zugriff nicht gewährt\\server\dir1
oder\\server\dir2
dennoch gewährt wird\\server\dir1\dir2\dir3
?
quelle
Antworten:
Sie irren sich in Ihrer ursprünglichen Annahme, die den Rest Ihrer Frage in Frage stellt.
Die Mindest Erlaubnis , dass ein Benutzer müssen auf würde
dir1
unddir2
istTraverse Directory
. Dies wird jedoch höchstwahrscheinlich für Ihre Benutzer problematisch sein - daher würde ichTraverse Directory
und empfehlenList Folders
. Sie können durch die beiden obersten Verzeichnisse navigieren und dorthin gelangen,dir3
wo sie mehr Berechtigungen haben, sehen jedoch nicht einmal, welche Dateien in den beiden obersten Verzeichnissen vorhanden sind.Berechtigungen wie
Read & Execute
undModify
sind nur Sammlungen einzelner Berechtigungen. Sie sind das erste, was Sie sehen, weil sie am häufigsten verwendet werden. Wenn Sie sehr detailliert werden müssen (wie in dieser Situation), klicken Sie auf dieAdvanced
Schaltfläche und stöbern Sie in den dort aufgeführten Optionen.quelle
Erstaunlicherweise benötigen Personen, die über den vollständigen Pfad zu einem Unterordner verfügen, für den sie mindestens R-Berechtigungen haben, KEINE Berechtigungen für einen der übergeordneten Ordner, auch nicht für das Durchlaufen. Sie können einfach über die UNC darauf zugreifen. (Sie müssen natürlich über Leseberechtigungen für die Freigabe verfügen, jedoch nicht für Ordner, die über der Ebene liegen, auf die sie zugreifen möchten.)
Ich habe das nicht geglaubt, als mir gesagt wurde, aber Tests beweisen es.
Dies steht im Widerspruch zu dem, was ich über Berechtigungen in der Windows-Welt zu wissen glaubte, und ich vermute, dass dies für viele eine Überraschung sein wird.
\ server \ folder1 \ folder2 \ folder3
Wenn es für Bilbo überhaupt keine Berechtigungen für Ordner1 und Ordner2 gibt, Bilbo jedoch Änderungen (zum Beispiel) für Ordner3 vorgenommen hat, führt ihn \ server \ Ordner1 \ Ordner2 \ Ordner3 direkt dorthin, kein Problem.
quelle
folder1
SHARE-Berechtigungen und NTFS-Berechtigungen aktiviert sind. Dies funktioniertfolder3
also\\server\c$\folder1\folder2\folder3
nicht.Eine Lösung, die MDMarra ähnelt, besteht darin, die NTFS-Berechtigungen wie folgt festzulegen:
Das Endergebnis ist, dass der Benutzer / die Gruppe jeden einzelnen übergeordneten Ordner lesen und ohne andere Ordner oder Dateien einen Drilldown zum untergeordneten Ordner durchführen kann.
quelle
Daher habe ich dies in der folgenden Umgebung getestet, da ich eine endgültige, getestete Antwort auf die minimal erforderlichen Berechtigungen zum einfachen Durchsuchen von Ordnern über das Durchsuchen (dh über den Windows-Datei-Explorer) erhalten wollte. Hier sind die Ergebnisse für diejenigen, die die Dinge fest verschließen wollen.
Ich habe dies in der Produktion noch nicht getestet, um festzustellen, ob es merkwürdige Nebenwirkungen gibt, wenn die "standardmäßige", gut getestete Vorlage für Durchquerungsrechte von reduziert wird
... was im Grunde genommen nur normale "Read And Execute" -Berechtigungen sind, die auf "This Folder" beschränkt sind. Allerdings waren Tests im kleinen Maßstab bisher für Benutzer, die Dateien auf dem Server einfach verschieben, kopieren und entfernen, und für Benutzer, die vollständig von den Serverkopien von Dokumenten usw. arbeiten, völlig in Ordnung.
Umgebung:
Ergebnisse:
Optional : TraverseFolder - ExecuteFile
-> Diese optionale Berechtigung ist nur wichtig, wenn das Benutzerrecht "Bypass Traverse Checking" ausdrücklich abgelehnt wurde, da es in 99% der Fälle standardmäßig aktiviert ist. Anders ausgedrückt, das aktivierte Benutzerrecht "Bypass Traverse Checking" (in Gruppenrichtlinien verfügbar, nicht in NTFS-Datei- / Ordnerberechtigungen), das aktiviert ist, macht dieses Privileg vollständig überflüssig und macht dieses Privileg standardmäßig überall aktiviert. Hinweis: Ich habe nicht getestet, ob eine explizite Verweigerung dieses Rechts wiederum dazu führen würde, dass das Benutzerrecht "Bypass Traverse Checking" in diesem bestimmten Fall nicht mehr wirksam wird.
Ergänzende Informationen: Das Benutzerrecht "Bypass Traverse Checking" ermöglicht es jemandem, passiv zu einem Unterordner zu wechseln, auf den er Zugriff hat, egal wie tief er ist (dh die Berechtigungen werden für diese Datei / diesen Ordner festgelegt, jedoch nicht unbedingt irgendwo weiter oben) den Dateipfad).
quelle