Supportnet / Forum / Skripte(PHP,ASP,Perl...)
NTFS-Berechtigung mit VBS
Frage
Hallo ich habe ein Problem mit folgendem Script, läuft auf einem W2kAdvaced Server:
Die Konstaten habe ich mir von Microsoft geholt!
Script
´Definiere Masken für ACL
FULLACCESS = ADS_RIGHT_DELETE + ADS_RIGHT_READ_CONTROS + ADS_RIGHT_WRITE_DAC + ADS_Right_Write_OWNER _
+ ADS_RIGHT_SYNCHRONIZE + ADS_RIGHT_ACCESS_SYSTEM_SECURITY + ADS_RIGHT_GENERIC_READ _
+ ADS_RIGHT_GENERIC_WRITE + ADS_RIGHT_GENERIC_EXECUTE + ADS_RIGHT_GENERIC_ALL _
+ ADS_RIGHT_DS_CREATE_CHILD + ADS_RIGHT_DS_DELETE_CHILD + ADS_RIGHT_ACTRL_DS_LIST _
+ ADS_RIGHT_DS_SELF + ADS_RIGHT_DS_READ_PROP + ADS_RIGHT_DS_WRITE_PROP + ADS_RIGHT_DS_DELETE_TREE _
+ ADS_RIGHT_DS_LIST_OBJECT + ADS_RIGHT_DS_CONTROL_ACCESS = 256
´Datei oder Ordner, der bearbeitet werden soll!
testordner = "C:\ordner1"
Set IADsSecurityUtility = CreateObject("ADsSecurityUtility")
Set SD = IADsSecurityUtility.GetSecurityDescriptor(testordner, ADS_PATH_File, ADS_SD_FORMAT_IID)
Set DACL = SD.DiscretionaryACL
´ neue ACE Schreiben
Set newace = CreateObject("AccessControlEntry")
newace.AccessMask = FULLACCESS
newace.AceType = ADS_ACETYPE_ACCESS_ALLOWED
newace.Trustee = "Administrator, Cornelia"
´ Alle ACEs (ACCESS CONTROL ENTRY) entfernen
For each ace in DACL
DACL.Remove.ACE ace
next
´Neue ACE in ACL einfügen
DACL.AddAce newace
´zurückschreiben
retval3 = IADsSecurityUtility.SetSecurityDescriptor(testordner, ADS_PATH_FILE, SD, ADS_SD_FORMAT_IID)
MsgBox "Rechte für den Ordner """ & testordner & """ wurden neu geschrieben!" , , "Erfolgreicher Abschluss"
Das Script meldet jedoch einen Laufzeitfehler:
ActiveX-Komponenten kann kein Objekt erstellen:´ADsSecurityUtility´
Wo ist der Fehler? Danke für Antworten!
Stephan
Antwort 1 von Massaraksch
IADsSecurityUtility
Quelle: Microsoft, Platform SDK: Active Directory Service Interfaces
Massaraksch
Zitat:
Requirements
...
Server:
Requires Windows Server "Longhorn" or Windows Server 2003.
...
Requirements
...
Server:
Requires Windows Server "Longhorn" or Windows Server 2003.
...
Quelle: Microsoft, Platform SDK: Active Directory Service Interfaces
Massaraksch

