AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Rechte von Dateien ermitteln

Ein Thema von MaBuSE · begonnen am 12. Nov 2010 · letzter Beitrag vom 15. Nov 2010
Antwort Antwort
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#1

AW: Rechte von Dateien ermitteln

  Alt 12. Nov 2010, 16:26
Erste Vorraussetzung für Dein Vorhaben, ist, daß Du überhaupt das Recht hast, die Rechte zu lesen.
Je nachdem, wer sich um die NTFS-Rechtevergabe kümmert, können so interessante Konstellationen auftreten wie: DateiX darf von Benutzer Y gelesen,geschrieben,gelöscht werden und von Benutzer Z nicht. Benutzer Y hat aber keine Rechte auf Verzeichnis U in dem sich Datei X ja befindet. Wenn jetzt nur der Benutzer A den Vollzugriff auf Verzeichnis U und die Datei X hatte, dieser aber das Unternehmen vor 2 Monaten verlassen hat, und die DataAdmin Gruppe dummer Weise nicht zugelassen wurde, dann hat man sich eine echte Leiche gebastelt.

Aber Spaß beiseite, wenn ich mich richtig erinnere könntest Du bei Lucky fündig werden, ich glaube das Stichwort hieß DumpACL.

In 90% der Fälle besitzen Dateien keine eigenen Rechte, sondern bekommen sie vom übergeordneten Ordner vererbt, der sie meistens auch wieder vererbt bekommt.
D.h. meistens reicht es aus, einfach die Rechte des Ordners zu ermitteln.
Das kommt sehr auf die Benutzer an. Solange die Datei neu erstellt wird oder kopiert wird, funktioniert das. Aber sobald ein "MOVE" genutzt wird, dann wandern die orignären Rechte auch mit, und wenn dann der "Besitzer" verschollen ist...
Ich habe übrigens schon Dateien gesehen, die ererbte Rechte besaßen, wo der Vererber diese Rechte nicht (mehr) hatte.
(irgendwo ergibt sich natürlich immer ein Adminhintertürchen)
Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von Assarbad
Assarbad

Registriert seit: 8. Okt 2010
Ort: Frankfurt am Main
1.234 Beiträge
 
#2

AW: Rechte von Dateien ermitteln

  Alt 12. Nov 2010, 17:12
Erste Vorraussetzung für Dein Vorhaben, ist, daß Du überhaupt das Recht hast, die Rechte zu lesen.
Genau deswegen geht hier ja auch Probieren über Studieren. Also echt entweder das Objekt per MSDN-Library durchsuchenAccessCheck (oder im KM MSDN-Library durchsuchenSeAccessCheck) auf Zugriffsmöglichkeiten testen oder öffnen und ggf. einen Fehler melden.

Benutzer Y hat aber keine Rechte auf Verzeichnis U in dem sich Datei X ja befindet.
Das ist bei den Standardinstallationen Unsinn, siehe MSDN-Library durchsuchenSeChangeNotifyPrivilege.

NB: man unterscheide keine Rechte und Zugriff verweigern!

[...] dann hat man sich eine echte Leiche gebastelt.
Nicht wirklich. Es gibt ja noch Backup-Privilegien.

Aber ohnehin ist es am besten sowas nicht selber nachzuprogrammieren sondern sich auf das vom System vorgegebene zu verlassen. Da kann man zumindest erstmal annehmen, daß es konsistentes Verhalten produziert (auch wenn das in Wirklichkeit nicht immer der Fall sein mag).
Oliver
"... aber vertrauen Sie uns, die Physik stimmt." (Prof. Harald Lesch)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

AW: Rechte von Dateien ermitteln

  Alt 12. Nov 2010, 19:48
Vorsicht, beim Verschienben ist das so eine Sache mit dem Rechten: http://www.michael-puff.de/Artikel/Z...schieben.shtml

Und hier mein Artikel zum Thema mit dem genannten Demo: http://www.michael-puff.de/Artikel/DACL.shtml
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#4

AW: Rechte von Dateien ermitteln

  Alt 13. Nov 2010, 13:41
Ich habe übrigens schon Dateien gesehen, die ererbte Rechte besaßen, wo der Vererber diese Rechte nicht (mehr) hatte.
Du meinst, z.B. eine Datei besitzt einen DACL Eintrag, der im SecurityEditor als vererbt angezeigt wird, jedoch der garnicht im übergeordneten Ordner existiert?
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Rechte von Dateien ermitteln

  Alt 15. Nov 2010, 12:42
Ich habe übrigens schon Dateien gesehen, die ererbte Rechte besaßen, wo der Vererber diese Rechte nicht (mehr) hatte.
Du meinst, z.B. eine Datei besitzt einen DACL Eintrag, der im SecurityEditor als vererbt angezeigt wird, jedoch der garnicht im übergeordneten Ordner existiert?
Genau so etwas!
und es funktioniert trotzdem

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#6

AW: Rechte von Dateien ermitteln

  Alt 15. Nov 2010, 16:46
Ja, da ist das inherited Flag gesetzt. Das kann man machen, aber Windows ermittelt den falschen Vorgänger. Zudem kann es passieren, dass der Editor die ACEs auseinandernimmt und mehrfach darstellt.
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz