AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Sicherheitseinstellungen von Dateien auslesen/setzen
Thema durchsuchen
Ansicht
Themen-Optionen

Sicherheitseinstellungen von Dateien auslesen/setzen

Ein Thema von hsg · begonnen am 4. Jul 2011 · letzter Beitrag vom 7. Jul 2011
Antwort Antwort
Seite 1 von 2  1 2      
hsg

Registriert seit: 24. Apr 2006
Ort: Wustermark
354 Beiträge
 
Delphi 10.3 Rio
 
#1

Sicherheitseinstellungen von Dateien auslesen/setzen

  Alt 4. Jul 2011, 10:12
Hallo,

mein Chef hat mich vor eine Aufgabe gestellt, bei der ich nicht weiß, wie ich da vorgehen muss. Vielleicht könnt ihr mir ja die richtige Richtung weisen.

Das grobe Thema lautet Migration von Daten einer Domäne in eine neue. Benutzer sind dabei nicht das Problem. Aber bei den Sicherheitseinstellungen der Dateien sieht das ganze schon anders aus.

Nach den Vorstellungen meines Chefs soll das ganze wie folgt über die Bühne gehen:
Mittels Programm wird die SID des Benutzers/Gruppe aus der neuen Domäne ausgelesen und den einzelnen Dateien die gleichen Sicherheitseinstellungen zugewiesen, wie der Benutzer/Gruppe in der alten Domäne hatte. Das alles soll ohne Vertrauensstellung der beiden Domänen passieren.

Frage: geht so was? Wenn ja, wie mache ich das ganze? Welche API-Befehle muss ich da verwenden?
Gruß
Jörg
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#2

AW: Sicherheitseinstellungen von Dateien auslesen/setzen

  Alt 4. Jul 2011, 10:27
Das RoboCopy aus dem Windows Resourcekit kann die Rechte übertragen. Bin mir nur nicht sicher, wie das mit dem SID-Umsetzung klappt.

Ansonsten schau mal diese VBS an:
http://support.microsoft.com/kb/825751/EN-US

Notfalls: Luckie hat was auf seiner Homepage gehabt, was sich mit NTFS-Rechten beschäftigt.
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

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

AW: Sicherheitseinstellungen von Dateien auslesen/setzen

  Alt 4. Jul 2011, 11:59
Nach den Vorstellungen meines Chefs soll das ganze wie folgt über die Bühne gehen:
Mittels Programm wird die SID des Benutzers/Gruppe aus der neuen Domäne ausgelesen und den einzelnen Dateien die gleichen Sicherheitseinstellungen zugewiesen, wie der Benutzer/Gruppe in der alten Domäne hatte. Das alles soll ohne Vertrauensstellung der beiden Domänen passieren.
Soweit ich weiß, kann man keiene SID von der einen Domäne in die andere umkopieren, kann mich da aber auch gewaltig irren!
Ich würde soweit es eben geht mit Benutzergruppen arbeiten, da ist der Pflegeaufwand wesentlich geringer als bei Einzelbenutzern, nur bei der Definnition der Gruppen tun sich viele Leute schwer.
Um allen Berechtigungsproblemen aus dem Weg zu gehen, einen FAT-Datenträger als Zwischenspeicher nutzen.

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

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#4

AW: Sicherheitseinstellungen von Dateien auslesen/setzen

  Alt 4. Jul 2011, 12:07
Du kannst SIDs kopieren, allerdings können die nicht den neuen Konten zugewiesen werden. Genau das ist auch sein Problem.
Daher das Programm, welche die Berechtigungen umsetzen soll.
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat
CCRDude

Registriert seit: 9. Jun 2011
678 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Sicherheitseinstellungen von Dateien auslesen/setzen

  Alt 4. Jul 2011, 12:26
Du kannst alles selber basteln, dann fängst Du mit GetFileSecurity, ConvertSecurityDescriptorToString, ConvertSidToStringSid, LookupAccountName etc. an.

Eher würde ich aber die JWSCL empfehlen, die JwsclDescriptor.pas etwa sollte das Händling von Security-Deskriptoren vereinfachen, und die JwsclSid.pas den Umgang mit den User-SIDs. Darin müsstest Du halt jeweils die Rechte der bekannten alten User-IDs in die neuen Äquivalente ändern.
  Mit Zitat antworten Zitat
hsg

Registriert seit: 24. Apr 2006
Ort: Wustermark
354 Beiträge
 
Delphi 10.3 Rio
 
#6

AW: Sicherheitseinstellungen von Dateien auslesen/setzen

  Alt 4. Jul 2011, 12:44
Soweit ich weiß, kann man keiene SID von der einen Domäne in die andere umkopieren, kann mich da aber auch gewaltig irren!
ich hoffe es an dieser Stelle einfach mal. Es ist mir klar, dass die Namensauflösung des SID nicht unbedingt möglich ist, aber ansonsten ist das doch nur ein Eintrag in was auch immer, oder nicht?

Ich würde soweit es eben geht mit Benutzergruppen arbeiten, da ist der Pflegeaufwand wesentlich geringer als bei Einzelbenutzern, nur bei der Definnition der Gruppen tun sich viele Leute schwer.
Um allen Berechtigungsproblemen aus dem Weg zu gehen, einen FAT-Datenträger als Zwischenspeicher nutzen.

Gruß
K-H
Das ist leider keine Lösung. Es handelt sich hier um eine über die Jahre gewachsene Struktur, bei der bei jeglicher Änderung uns die Benutzer killen würden! Natürlich wurde versucht, soweit wie möglich das über Benutzergruppen abzufedern, aber es ist leider nicht immer möglich.

Das RoboCopy aus dem Windows Resourcekit kann die Rechte übertragen. Bin mir nur nicht sicher, wie das mit dem SID-Umsetzung klappt.

Ansonsten schau mal diese VBS an:
http://support.microsoft.com/kb/825751/EN-US

Notfalls: Luckie hat was auf seiner Homepage gehabt, was sich mit NTFS-Rechten beschäftigt.
Das VBS habe ich mir erst mal runtergeholt, aber noch nicht reingeschaut, scheint aber schon mal interessant zu sein. Auf Luckies-Seite bin ich gerade am Stöbern (und lese nicht nur die Themen diesbezüglich durch )

Du kannst alles selber basteln, dann fängst Du mit GetFileSecurity, ConvertSecurityDescriptorToString, ConvertSidToStringSid, LookupAccountName etc. an.

Eher würde ich aber die JWSCL empfehlen, die JwsclDescriptor.pas etwa sollte das Händling von Security-Deskriptoren vereinfachen, und die JwsclSid.pas den Umgang mit den User-SIDs. Darin müsstest Du halt jeweils die Rechte der bekannten alten User-IDs in die neuen Äquivalente ändern.
Das klingt schon mal gut. Danke für den Tipp, schaue ich mir mal an.

Gruß Jörg
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

AW: Sicherheitseinstellungen von Dateien auslesen/setzen

  Alt 4. Jul 2011, 13:03
Auf Luckies-Seite bin ich gerade am Stöbern (und lese nicht nur die Themen diesbezüglich durch )
Ach du bist das, der hier so stöhnt und schnauft. Aber beim nächsten Besuch bitte die Füße abtreten bevor du rein kommst.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
hsg

Registriert seit: 24. Apr 2006
Ort: Wustermark
354 Beiträge
 
Delphi 10.3 Rio
 
#8

AW: Sicherheitseinstellungen von Dateien auslesen/setzen

  Alt 4. Jul 2011, 13:09
Ach du bist das, der hier so stöhnt und schnauft.
Oh, entschuldige, habe ich dich ausversehen geweckt?
Aber beim nächsten Besuch bitte die Füße abtreten bevor du rein kommst.
Hatte ich eigentlich gemacht
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

AW: Sicherheitseinstellungen von Dateien auslesen/setzen

  Alt 4. Jul 2011, 15:13
Und warum musste ich wieder hinter dir herwischen?

Also bezüglich ACLs habe ich nur das Auslesen: http://www.michael-puff.de/Programmi...kel/DACL.shtml Das Setzen und Zuweisen ist nicht so ganz trivial. Und wenn man nicht weiß, was man macht, kann man sich da einiges zerschießen bzw. Sicherheitslücken aufmachen. Man sollte sich da also erst mal genau informieren.
Michael
Ein Teil meines Codes würde euch verunsichern.

Geändert von Luckie ( 4. Jul 2011 um 15:16 Uhr)
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#10

AW: Sicherheitseinstellungen von Dateien auslesen/setzen

  Alt 4. Jul 2011, 15:27
Also ich würde hier nicht beginnen mit Delphi zu programmieren - die Lernkurve dauert einfach zu lange (obwohl es ein interessantes Thema sein mag).
Aber es gibt schon Tools, die ein Backup eines NTFS-Pfades inklusive alle Rechte vornehmen können.
Mit dem Kommandozeilentool icacls lässt sich auch Einiges machen.
http://blogs.technet.com/b/askds/arc...rmissions.aspx
Andreas
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 13:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz