Festlegen der ACL einer Datei, die vererbt werden soll

7

Ich suche nach einem Weg in c #, um die Berechtigungen einer Datei so zu ändern, dass sie vom übergeordneten Objekt übernommen werden, als ob die Datei erstellt oder in dieses Verzeichnis kopiert wurde.

Ich kann scheinbar nichts von einem Datei Standpunkt finden (Ich habe ein oder zwei Referenzen für Verzeichnisse gefunden, aber ich kann sie nicht aus irgendeinem Grund in eine Datei übersetzen lassen) . C # - Windows ACL - Vererbte Berechtigungen anwenden , zum Beispiel. Aber ich bin nicht sicher, was der Wert für LOGON_USER_NAME sein soll und so weit wie ich bekommen kann ist ein System.ArgumentExcpetion von "keine Flags können gesetzt werden"

    
Jim 10.10.2012, 04:17
quelle

2 Antworten

16

Ich habe die Antwort endlich hier gefunden. File.Move erbt keine Berechtigungen aus dem Zielverzeichnis?

%Vor%

Aktualisieren

Während der obige Code-Snip die geerbten Berechtigungen hinzufügt, werden vorhandene explizite Berechtigungen nicht entfernt. Mein endgültiger Code sieht eher so aus.

%Vor%

Update 2

Oder verwenden Sie einfach TGasdfs prägnantere 3-Zeilen-Lösung, die sich an anderer Stelle auf dieser Seite befindet ...

    
Jim 10.10.2012, 14:27
quelle
5

Die akzeptierte Antwort, bei der die expliziten Berechtigungen entfernt wurden, fühlte sich für meinen Geschmack etwas zu kompliziert an, so dass ich versuchte, eine neue FileSecurity zu erstellen. Das folgende scheint zu funktionieren, und die resultierenden Berechtigungen sollen nur die geerbten Berechtigungen verwenden:

%Vor%     
TGasdf 10.10.2016 12:27
quelle

Tags und Links