Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi SetFileSecurity: Wie funktioniert die Funktion (https://www.delphipraxis.net/22515-setfilesecurity-wie-funktioniert-die-funktion.html)

Devil 18. Mai 2004 18:29


SetFileSecurity: Wie funktioniert die Funktion
 
Ich muss über ein Programm die Zugriffsrechte auch Dateien einschränken können, z.B. möcht ich festlegen, welcher User auf welche Datei (oder Ornder oder Laufwerk) zugreifen kann, aber andere User keine Leserechte auf den Ordner haben.
Ich hab im Forum darüber gesucht und bin auf die WinAPI-Funktion setFileSecurity gestoßen. Da ich aber die Hilfe leider nur in Englisch habe, hab ich nicht so richtig verstanden, wie diese Funktion zu verwenden ist. Auch im Forum hab ich nix dazu gefunden.
Kann mir da kurz jemand erklären, welche Parameter ich da mitgeben muss, damit z.B. nur User x auch die Datei y zugreifen kann?

MrKnogge 18. Mai 2004 18:37

Re: SetFileSecurity: Wie funktioniert die Funktion
 
Ich konnte die funktion leider nicht in der Delphi-Hilfe finden :?

Skiron 18. Mai 2004 18:43

Re: SetFileSecurity: Wie funktioniert die Funktion
 
Die is glaub ich in der WinAPI Hilfe, die is (glaub ich) immer auf Englisch!

Zur Funktion:
Ich hab mich damit auch kurz bschäftigt, bin auch auch nicht so weit gekommen:
Der 1. Parameter ist natürlich der Dateiname. Ob ein Ornder oder auch Laufwerk auch gültig ist, weiß ich nicht.
Die anderen beiden Parameter sind eine Art Beschreibung der Zugriffsrechte für die User und einmal die Information darüber. Soweit ich das verstanden habe, gibts eine Liste mit Zugriffsrechten (ACL, AccessControlList) und die Beschreibung (Art der Information).

Ich bin mir nicht sicher, kann auch sein, dass das ganze Bullshit war, das is, was ich bei der Funktion verstanden hab!

Luckie 19. Mai 2004 09:39

Re: SetFileSecurity: Wie funktioniert die Funktion
 
Lad dir mal das PSDK runter bzw. wenn du schon hast, dann kuck die mal die Samples an, da habe ich so was gefunden, was in die Richtung geht.

PS: auf meiner Homepage bei den Downloads findest du ein Programm "TakeOwn" welches ähnliches macht.

Devil 19. Mai 2004 17:27

Re: SetFileSecurity: Wie funktioniert die Funktion
 
Ich hab mir jetzt mit Hilfe von Luckies Programm diese Funktion zusammenstellen können.
Delphi-Quellcode:
function FreeForAll: boolean;
var
  SecDesc: SECURITY_DESCRIPTOR;
begin
  InitializeSecurityDescriptor(@SecDesc, SECURITY_DESCRIPTOR_REVISION);
  SetSecurityDescriptorDacl(@SecDesc, true, nil, false);
  result := SetFileSecurity(PChar(Filename), DACL_SECURITY_INFORMATION,
         @SecDesc);
end;
Mit der PSDK bin ich aber nicht weit gekommen.
Wie kann ich diese Funktion nur für bestimmte User anwenden? z.B. User x kann nur lesen, User y kann auch schreiben....
Außerdem:
Wenn ich die Funktion auf einen Ornder anwende, dann habe ich Zugriff auf den Ornder, aber nicht auf seinen Inhalt!
Wie kann ich das umgehen? Ich hatte schon daran gedacht, jede Datei darin zu setzen, aber falls danach eine neue dazu kommt, möcht ich auch auf die Zugreifen können!


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:55 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