Jump to content

Löschen eines Ordners verhindern


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Habe zwei Festplatten C und D. Da der Speicherplatz auf C langsam voll wird, möchte ich die temporären Dateien des (einzigen) Benutzers "foo" nach D:\Temp verlagern. Die Benutzer "SYSTEM" und "Administrator" (nicht die Gruppe "Administratoren"!) sollen weiterhin Vollzugriff erhalten. Der Benutzer "foo" soll alles dürfen außer den Ordner selbst zu löschen. "foo" steckt selbst in der Gruppe "Administratoren".

 

Ich hab heute den halben Tag mit den "Erweiterten Sicherheitseinstellungen für Temp" verbracht und es nicht hinbekommen. Jedes Mal konnte ich den Ordner wieder löschen. Was mache ich falsch bzw. wie muss man's denn richtig machen?

 

Mein letzter Stand war, dass ich den Ordner als Benutzer "foo" angelegt habe. Danach Rechtsklick -> Eigenschaften -> Sicherheit -> Erweitert. Dort den Haken bei "Berechtigungen übergeordneter Objekte..." entfernt und "Entfernen" gedrückt. Anschließend "Hinzufügen" -> "SYSTEM" -> Vollzugriff. Dasselbe für den "Administrator" und "foo". Bei "foo" habe ich aber zusätzlich das Häkchen für "Löschen" in der Spalte "Verweigern" gesetzt. Für "foo" entstehen somit zwei Einträge: einmal alles außer "Löschen" (Diesen Ordner, Unterordner und Dateien) und einmal das Verweigern des Löschens (Nur diesen Ordner). Schließlich mit OK angewendet und den Hinweis bestätigt, dass Verweigern gegenüber Erlauben Vorrang hat. Ein testweises Rechtsklick -> Löschen löschte den Ordner aber.

Link zu diesem Kommentar

Hi,

 

Die Windows-Hilfe beinhaltet zur Berechtigung Löschen Folgendes

Hierdurch wird festgelegt, ob die Datei oder der Ordner gelöscht werden darf. Wenn Sie nicht über die Berechtigung zum Löschen für eine Datei oder einen Ordner verfügen, können Sie das betreffende Element dennoch löschen, wenn Sie das Recht Untergeordnete Ordner und Dateien löschen für den übergeordneten Ordner besitzen.

 

Du müßtest also im übergeordneten Ordner noch die Berechtigung zum Löschen der Unterordner wegnehmen.

 

Tschau,

 

Sigma

Link zu diesem Kommentar

Der Fehler wahrscheinlich an der Berechtigung des übergeordneten Ordners (also die Root von D:\), in der die Administratoren oder wenigstens FOO Vollzugriff haben. Haben sie Vollzugriff, sind sie in der Lage, untergeordnete Ordner zu löschen, selbst wenn sie dort nur Leseberechtigung haben (explizit berechtigt). Entweder gewährst Du auf dem Rootordner den Administratoren nur Ändern-Berechtigung und erzeugst den angepassten Temp-Ordner direkt unter der Root. Du kannst auch die Root so lassen wie sie ist und Dir einen Ordner erzeugen, in dem der Administrator Vollzugriff,das System Vollzugriff und FOO Lesen Zugriff hat. Darunter legst Du den eigentlichen Temp-Ordner an, der folgende Berechtigungen hat:

Administrator : Vollzugriff (geerbt)

System : Vollzugriff (geerbt)

FOO: (Lesen geerbert) zusätzlich Schreiben anklicken

ÜBERNEHMEN !!!

ERWEITERT

den nicht geerbten FOO-Eintrag editieren und zusätzlich "Unterordner und Dateien löschen" anklicken (NICHT Löschen markieren)

Ich habe einen TEMPROOT-Folder erstellt und darunter den TEMP-Ordner. Es funktioniert auch, wenn Du TEMP unterhalb der Root anlegst und den Administratoren in der Root nur Ändern Berechtigung gewährst, es wirkt sich aber leider auch auf andere Ordner unterhalb der Root aus ...

edit: also das, was Sigma schon geschrieben hat, Vollzugriff beinhaltet "Unterordner und Dateien löschen" und ist im übergeordneten Ordner aktiv, also entweder nur Ändern Berechtigung oder diese genannte, spezielle Berechtigung entfernen ...

Link zu diesem Kommentar
Der Fehler wahrscheinlich an der Berechtigung des übergeordneten Ordners (also die Root von D:\), in der die Administratoren oder wenigstens FOO Vollzugriff haben. Haben sie Vollzugriff, sind sie in der Lage, untergeordnete Ordner zu löschen, selbst wenn sie dort nur Leseberechtigung haben (explizit berechtigt).

 

Die Rechte von D:\Temp sind doch viel spezifischer als die vererbten Rechte von D:, oder? Sollten sie demnach nicht die Berechtigungen von D: überschreiben? Abgesehen davon habe ich ja keine Berechtigungen vererbt (s. erster Beitrag). Ich habe zuerst alle entfernt und dann neue angelegt.

 

Also bei Linux funktioniert das so und es erscheint mir sowohl logisch als auch intuitiv.

 

Ich habe einen TEMPROOT-Folder erstellt und darunter den TEMP-Ordner. Es funktioniert auch, wenn Du TEMP unterhalb der Root anlegst und den Administratoren in der Root nur Ändern Berechtigung gewährst, es wirkt sich aber leider auch auf andere Ordner unterhalb der Root aus ...

 

Übertragen auf mein Beispiel heißt das doch dann: D:\TEMPROOT\TEMP lässt sich zwar nicht löschen, aber was ist mit D:\TEMPROOT? Lässt es sich dann auch nicht löschen, weil es nicht geleert werden kann? Lässt es sich denn umbenennen? Nach dieser Theorie würden ja dann auch die Berechtigungen von D:\TEMPROOT\TEMP auf alle Unterordner und Dateien übertragen werden. D.h. darin zur Laufzeit erstellte temporäre Daten lassen sich als Benutzer "foo" dann auch nicht mehr löschen, sondern nur noch vom Administrator. Das wäre nicht gut.

 

:confused: Lieber Bill, es muss doch möglich sein einen Ordner vor dem Löschen zu bewahren, der sich auf der Root-Ebene befindet, ohne dass allen anderen Ordnern auf derselben Ebene das gleiche Schicksal widerfährt. Das kann doch nicht so schwer sein... Ich glaube nicht, dass Windows so "doof" ist.

 

P.S. Mir ist klar, dass "foo" (der in der Gruppe "Administratoren" steckt) sich selbst die Rechte wieder zuteilen kann, den Ordner doch zu löschen. Es ist nur als Selbstschutz gedacht, dass D:\Temp nicht ausversehen gelöscht wird.

Link zu diesem Kommentar

Nochmal, es liegt an der Berechtigung "Unterordner und Dateien löschen", die der Benutzer FOO auf Rootebene hat, also auf D:\ (in Deinem Fall, also im übergeordneten Ordner). Hat er diese Berechtigung nicht, kann er auch den darunter liegenden Ordner nicht löschen. Das hat nichts mit der Vererbung zu tun, er darf Unterordner und Dateien löschen, auch wenn er keine Löschen-Berechtigung hat (genau das sagt diese Berechtigung aus) ...

Wenn Du die Berechtigungen so einstellst, wie ich es beschrieben habe, darf auch TEMPROOT von FOO nicht gelöscht werden. Im darunter liegenden Ordner kann FOO Ordner und Dateien anlegen und natürlich auch löschen ... In TEMPROOT selbst kann FOO keine Dateien und Ordner anlegen, wozu auch, er soll einen TEMP-Ordner haben, der ja darunter liegt und beschreibbar, aber nicht löschbar ist. Das ganze klappt natürlich auch mit einem Ordner, der direkt unter der Root liegt. Wenn aber auf dem Rootordner eine Berechtigung vergeben ist, dass Unterordner und Dateien auch gelöscht werden können, selbst wenn keine Löschen-Berechtigung vorhanden ist, dann ist es nicht verwunderlich, dass man den Ordner löschen kann. Die Berechtigung zum Löschen der angelegten Ordner und Dateien im Temp-Ordner selbst bekommt der User FOO (so wie ich es konfiguriert habe), ebenso durch die Berechtigung "Unterordner und Dateien löschen".

Link zu diesem Kommentar

Also prinzipiell habe ich verstanden, was du mir mitteilen willst. Allerdings bin ich trotzdem der Meinung, dass

 

1) die Berechtigungen von D:\Temp spezifischer sind als von D: und damit die von dir beschriebenen "störenden" Berechtigungen überschreiben sollten und

2) Verweigerte Berechtigungen höherrangig sind als die für's Zulassen.

 

Wieso klappt/stimmt Punkt 1) nicht?

 

Selbst wenn deine Konfiguration stimmig ist, sollte doch trotzdem das Verweigern des Löschens dieses auch verhindern, oder?

 

Ich finde es doch recht umständlich, dafür quasi einen Überordner anlegen zu müssen...

Link zu diesem Kommentar

Sie sind spezifischer, trotzdem gilt die Löschen-Einstellung auf übergeordneter Ebene. Das Verweigern des Löschens wirkt sich schon auf diesen Ordner aus, über den Umweg der Berechtigung des übergeordneten Ordners erhält er sie aber wieder. Die genannte Berechtigung hat also Vorrang. Man kann das Löschen nicht verbieten, wenn man Vollzugriff auf dem übergeordneten Ordner hat.

Im Übrigen stimmt der Satz, dass Verweigerungen immer vorrangig sind, nicht. Beispielsweise überschreibt ein explizites Zulassen eine geerbte Verweigerung.

Hier steht es auch noch mal ...

Festlegen, Einsehen, Ändern und Löschen von speziellen Datei- und Ordnerberechtigungen in Windows XP

"Unterordner und Dateien löschen

Die Berechtigung Unterordner und Dateien löschen gilt nur für Ordner und gewährt oder verweigert dem Benutzer das Recht, Unterordner und Dateien auch dann zu löschen, wenn er für den Unterordner oder die Datei nicht über die Berechtigung Löschen verfügt." (das hat Sigma auch schon gepostet)

Er hat die Berechtigung zum Löschen nicht, da Du es ihm verweigerst , also greift die Berechtigung vom Parent ...

Du musst keinen Unterordner anlegen, der User FOO darf nur im Parent kein Vollzugriff bzw. die Berechtigung "Unterordner und Dateien löschen" haben. Da er aber in der Gruppe der Administratoren ist und dieser Gruppe diese Berechtigung offenbar gewährt wird, wird das nicht klappen ...

Link zu diesem Kommentar
Sie sind spezifischer, trotzdem gilt die Löschen-Einstellung auf übergeordneter Ebene. Das Verweigern des Löschens wirkt sich schon auf diesen Ordner aus, über den Umweg der Berechtigung des übergeordneten Ordners erhält er sie aber wieder. Die genannte Berechtigung hat also Vorrang.

 

Ich hätte erwartet, dass es sich genau umgekehrt verhält! Die spezifischere Berechtigung hat Vorrang (wie du bestätigst). Daher sollte sie nicht durch eine geerbte oder übergeordnete wieder entkräftigt werden dürfen. Das ist in meinen Augen ein Widerspruch. Die Rechtevergabe wird doch eigentlich von oben nach unten bishin zum Ziel-Ordner durchgegangen. Eine folgende Berechtigung überschreibt dabei eine vorherige. Beispiel:

 

 Pfad       | Sehen | Lesen | Schreiben
------------+-------+-------+-----------
D:         | ja    | ja    | ja
D:\foo     | erben | nein  | nein
D:\foo\bar | nein  | erben | ja
------------+-------+-------+-----------
D:\foo\bar | nein  | nein  | ja

 

Du musst keinen Unterordner anlegen, der User FOO darf nur im Parent kein Vollzugriff bzw. die Berechtigung "Unterordner und Dateien löschen" haben.

 

Er soll auf Root-Ebene aber Vollzugriff haben. Daher wird offensichtlich ein Unterordner Pflicht werden.

Link zu diesem Kommentar

Traurigerweise funktioniert das :confused:

 

Ich zweifle wegen dieses Satzes, der erscheint wenn ich das Löschen des Ordners explizit verweigere:

 

Sie sind im Begriff einen Zugriffsverweigerungseintrag zu setzen. Zugriffsverweigerungen haben Vorrang vor Zugriffsgenehmigungen. Falls ein Benutzer Mitglied in zwei Gruppen ist, und einer Gruppe der Zugriff genehmigt und der anderen Gruppe der Zugriff verweigert wird, wird dem Benutzer der Zugriff verweigert.

Möchten Sie den Vorgang fortsetzen?

 

Ich betrachte das als Notlösung, bin aber nicht so richtig zufrieden damit. Beinhaltet der künstliche User "Jeder" eigentlich auch SYSTEM und NT-AUTH... (so ähnlich heißt das doch) oder nur reine User?

Link zu diesem Kommentar

Per Default enthält die Gruppe Jeder ALLE Prinzipale, ausser Anonymous (das lässt sich via Richtlinie einschalten). Deine Verweigerung gilt ab hier und abhängig von der Reichweite auch für untergeordnete Dateien und Ordner (soweit hast Du es also richtig verstanden). Die Berechtigung "Unterordner und Dateien löschen" ist für den Fall, dass jemand löschen dürfen soll, auch wenn er keine Löschen-Berechtigung hat (entweder auf Dateien oder Ordner innerhalb des so konfigurierten Ordners, diese Berechtigung ist eine reine Ordnerberechtigung). Ob diese Löschen-Berechtigung nun durch eine explizite Verweigerung oder durch nicht Gewähren ausgeschlossen wird, ist unerheblich. In Deinem Fall gilt sie nur für den Rootordner, da Du die Vererbung deaktiviert hast , also ausschliesslich in dem Ordner über Temp (Temp ist ein direkter Unterordner, also darf laut Berechtigung dieser Ordner gelöscht werden,"Unterordner und Dateien löschen" eben)

Ich schliesse aus Deinem letzten Post, dass es mit einem Unterordner und so konfiguriert, wie beschrieben, funktioniert ?!

Link zu diesem Kommentar
Ich schliesse aus Deinem letzten Post, dass es mit einem Unterordner und so konfiguriert, wie beschrieben, funktioniert ?!

 

Es funktioniert, wenn ich einen Ordner D:\foo habe und in ihm einen weiteren Ordner D:\foo\bar anlege. Bei D:\foo verweigere ich "Unterordner und Dateien löschen" und bei D:\foo\bar verweigere ich "Nur diesen Ordner -> Löschen" (jeweils für "Jeder"). Somit kann niemand den Ordner D:\foo\bar löschen und daher auch nicht D:\foo.

 

Administratoren könnten jedoch diese Berechtigungen selbstverständlich umstellen, um anschließend beide Ordner löschen zu dürfen.

 

Umständlich, aber klappt!

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...