DetailPage-MSS-KB

Knowledge Base

Artikel-ID: 825751 - Geändert am: Dienstag, 31. Mai 2005 - Version: 2.1

Dieser Artikel ist eine Übersetzung des folgenden englischsprachigen Artikels der Microsoft Knowledge Base:
825751  (http://support.microsoft.com/kb/825751/EN-US/ ) How to use Xcacls.vbs to modify NTFS permissions
Bitte beachten Sie: Bei diesem Artikel handelt es sich um eine Übersetzung aus dem Englischen. Es ist möglich, dass nachträgliche Änderungen bzw. Ergänzungen im englischen Originalartikel in dieser Übersetzung nicht berücksichtigt sind. Die in diesem Artikel enthaltenen Informationen basieren auf der/den englischsprachigen Produktversion(en). Die Richtigkeit dieser Informationen in Zusammenhang mit anderssprachigen Produktversionen wurde im Rahmen dieser Übersetzung nicht getestet. Microsoft stellt diese Informationen ohne Gewähr für Richtigkeit bzw. Funktionalität zur Verfügung und übernimmt auch keine Gewährleistung bezüglich der Vollständigkeit oder Richtigkeit der Übersetzung.

Auf dieser Seite

Zusammenfassung

Es gibt eine aktualisierte Version des Programms "Xcacls.exe" (Extended Change Access Control List, XCACLS), das als Microsoft Visual Basic-Skript ("Xcacls.vbs") von Microsoft zur Verfügung steht. Dieser Artikel beschreibt Schritt für Schritt, wie Sie das Skript "Xcacls.vbs" verwenden können, um NTFS-Dateisystemberechtigungen für Dateien oder Ordner zu ändern und anzuzeigen. Sie können "Xcacls.exe" von der Befehlszeile aus verwenden, um alle Sicherheitsoptionen des Dateisystems festzulegen, auf die Sie in Windows Explorer zugreifen können. "Xcacls.vbs" zeigt die Zugriffssteuerungslisten (Access Control Lists, ACL) von Dateien an.

Hinweis: "Xcacls.vbs" ist nur mit Microsoft Windows 2000, Microsoft Windows XP und Microsoft Windows Server 2003 kompatibel. "Xcacls.vbs" wird von Microsoft nicht unterstützt.

Einrichten und Verwenden von "Xcacls.vbs"

Gehen Sie folgendermaßen vor, um "Xcacls.vbs" einzurichten und zu verwenden:
  1. Die aktuellste Version von "Xcacls.vbs" erhalten Sie auf folgender Microsoft-Website:
    http://download.microsoft.com/download/f/7/8/f786aaf3-a37b-45ab-b0a2-8c8c18bbf483/XCacls_Installer.exe (http://download.microsoft.com/download/f/7/8/f786aaf3-a37b-45ab-b0a2-8c8c18bbf483/xcacls_installer.exe)
  2. Doppelklicken Sie auf Xcacls_Installer.exe. Wenn Sie aufgefordert werden, einen Speicherort für die extrahierten Dateien anzugeben, geben Sie einen Ordner innerhalb der Suchpfadeinstellungen Ihres Computers an, wie etwa "C:\Windows".
  3. Ändern Sie das standardmäßige Skriptmodul von Wscript auf Cscript. (Das Skript "Xcacls.vbs" funktioniert am besten in Cscript.) Geben Sie hierzu den folgenden Befehl an einer Eingabeaufforderung ein, und drücken Sie anschließend die [EINGABETASTE]:
    cscript.exe /h:cscript
    Hinweis: Das Ändern des standardmäßigen Skriptmoduls auf Cscript hat nur Auswirkungen darauf, wie Skripts auf den Bildschirm schreiben. Wscript schreibt jede Zeile einzeln in ein Dialogfeld OK. Cscript schreibt jede Zeile in ein Befehlsfenster. Wenn Sie das standardmäßige Skriptmodul nicht ändern möchten, müssen das Skript mithilfe des Befehls
    cscript.exe xcacls.vbs
    ausführen. Wenn Sie dagegen das Standardmodul auf Cscript ändern, können Sie das Skript mit folgendem Befehl ausführen:
    xcacls.vbs
    .
  4. Um die Befehlssyntax von "Xcacls.vbs" anzuzeigen, geben Sie an einer Eingabeaufforderung Folgendes ein:
    xcacls.vbs /?

Syntax für den Befehl für "Xcacls.vbs"

Die folgende Ausgabe des Befehls xcacls.vbs /? beschreibt die Befehlssyntax von "Xcacls.vbs":
Usage: XCACLS filename [/E] [/G user:perm;spec] [...] [/R user [...]] [/F] [/S] [/T] [/P user:perm;spec [...]] [/D user:perm;spec] [...] [/O user] [/I ENABLE/COPY/REMOVE] [/N [/L filename] [/Q] [/DEBUG]

   filename            [Required] If used alone, it displays ACLs. (Filename can be a filename, directory name or wildcard characters and can include the whole path. If path is missing, it is assumed to be under the current directory.) Notes: - Put filename in quotes if it has spaces or special characters such as &, $, #, etc. - If filename is a directory, all files and subdirectories under it will NOT be changed unless the /A is present.

   /F                  [Used with Directory or Wildcard] This will change all files under the inputted directory but will NOT traverse subdirectories unless /T is also present. If filename is a directory, and /F is not used, no files will be touched.

   /S                  [Used with Directory or Wildcard] This will change all subfolders under the inputted directory but will NOT traverse subdirectories unless /T is also present. If filename is a directory, and /S is not used, no subdirectories will be touched.

   /T                  [Used only with a Directory] Traverses each subdirectory and makes the same changes. This switch will traverse directories only if the filename is a directory or is using wildcard characters. /E                  Edit ACL instead of replacing it.

   /G user:GUI         Grant security permissions similar to Windows GUI standard (non-advanced) choices. /G user:Perm;Spec   Grant specified user access rights. (/G adds to existing rights for user)

                       User: If User has spaces in it, enclose it in quotes. If User contains #machine#, it will replace #machine# with the actual machine name if it is a non-domain controller, and replace it with the actual domain name if it is a domain controller.

                             New to 3.0: User can be a string representing the actual SID, but MUST be lead by SID# Example: SID#S-1-5-21-2127521184-160... (SID string shown has been shortened) (If any user has SID# then globally all matches must match the SID (not name) so if your intention is to apply changes to all accounts that match Domain\User then do not specify SID# as one of the users.)

                       GUI: Is for standard rights and can be: Permissions... F  Full control M  Modify X  read and eXecute L  List folder contents R  Read W  Write Note: If a ; is present, this will be considered a Perm;Spec parameter pair.

                       Perm: Is for "Files Only" and can be: Permissions... F  Full control M  Modify X  read and eXecute R  Read W  Write Advanced... D  Take Ownership C  Change Permissions B  Read Permissions A  Delete 9  Write Attributes 8  Read Attributes 7  Delete Subfolders and Files 6  Traverse Folder / Execute File 5  Write Extended Attributes 4  Read Extended Attributes 3  Create Folders / Append Data 2  Create Files / Write Data 1  List Folder / Read Data Spec is for "Folder and Subfolders only" and has the same choices as Perm.

   /R user             Revoke specified user's access rights. (Will remove any Allowed or Denied ACL's for user.)

   /P user:GUI         Replace security permissions similar to standard choices.

   /P user:perm;spec   Replace specified user's access rights. For access right specification see /G option. (/P behaves like /G if there are no rights set for user.)

   /D user:GUI         Deny security permissions similar to standard choices. /D user:perm;spec   Deny specified user access rights. For access right specification see /G option. (/D adds to existing rights for user.)

   /O user             Change the Ownership to this user or group.

   /I switch           Inheritance flag.  If omitted, the default is to not touch Inherited ACL's. Switch can be: ENABLE - This will turn on the Inheritance flag if it is not on already. COPY   - This will turn off the Inheritance flag and copy the Inherited ACL's into Effective ACL's. REMOVE - This will turn off the Inheritance flag and will not copy the Inherited ACL's.  This is the opposite of ENABLE. If switch is not present, /I will be ignored and Inherited ACL's will remain untouched.

   /L filename         Filename for Logging. This can include a path name if the file is not under the current directory. File will be appended to, or created if it does not exit. Must be Text file if it exists or error will occur.

                       If filename is omitted, the default name of XCACLS will be used.

   /Q                  Turn on Quiet mode.  By default, it is off. If it is turned on, there will be no display to the screen.


   /DEBUG              Turn on Debug mode. By default, it is off. If it is turned on, there will be more information displayed and/or logged. Information will show Sub/Function Enter and Exit as well as other important information.

   /SERVER servername  Enter a remote server to run script against.

   /USER username      Enter Username to impersonate for Remote Connections (requires PASS switch).  Will be ignored if it is for a Local Connection.

   /PASS password      Enter Password to go with USER switch (requires USER switch).


Wildcard characters can be used to specify more than one file in a command, such as: *       Any string of zero or more characters ?       Any single character

You can specify more than one user in a command. You can combine access rights.


Verwenden von "Xcacls.vbs" zum Anzeigen von Berechtigungen


Sie können "Xcacls.vbs" auch verwenden, um Berechtigungen für Dateien oder Ordner anzuzeigen. Wenn Sie beispielsweise einen Ordner mit dem Namen "C:\Test" haben, geben Sie Folgendes an einer Eingabeaufforderung ein, um die Ordnerberechtigungen anzuzeigen, und drücken Sie anschließend die [EINGABETASTE]:
xcacls.vbs c:\test
Das folgende Beispiel zeigt eine typische Ausgabe:
C:\>XCACLS.VBS c:\test Microsoft (R) Windows Script Host Version 5.6 Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.Starting XCACLS.VBS (Version: 3.4) Script at 6/11/2003 10:55:21 AM

Startup directory: "C:\test"

Arguments Used: Filename = "c:\test"



************************************************************************** Directory: C:\test

Permissions: Type     Username                Permissions           Inheritance

Allowed  BUILTIN\Administrators  Full Control          This Folder, Subfolde Allowed  NT AUTHORITY\SYSTEM     Full Control          This Folder, Subfolde Allowed  Domain1\User1           Full Control          This Folder Only Allowed  \CREATOR OWNER          Special (Unknown)     Subfolders and Files Allowed  BUILTIN\Users           Read and Execute      This Folder, Subfolde Allowed  BUILTIN\Users           Create Folders / Appe This Folder and Subfo Allowed  BUILTIN\Users           Create Files / Write  This Folder and Subfo

No Auditing set

Owner: Domain1\User1


Hinweis: Die Ausgabe des Befehls xcacls.vbs c:\test in diesem Beispiel stimmt mit dem Text überein, der in der grafischen Benutzeroberfläche (Graphical User Interface, GUI) angezeigt wird. Einige Wörter sind im Befehlsfenster nicht vollständig.

Die Ausgabe gibt auch die Version des Skripts, das Startverzeichnis und die Argumente, die verwendet wurden, an.

Sie können auch Platzhalterzeichen verwenden, um die entsprechenden Dateien in dem Verzeichnis anzuzeigen. Wenn Sie beispielsweise Folgendes eingeben, werden alle Dateien mit der Erweiterung ".log", die sich im Ordner "C:\Test" befinden, angezeigt:
xcacls.vbs c:\test\*.log

Beispiele


Die folgenden Befehle für "Xcacls.vbs" liefern einige Beispiele für die Verwendung von "Xcacls.vbs".

xcacls.vbs c:\test\ /g domain\testuser1:f /f /t /e
Dieser Befehl bearbeitet bestehende Berechtigungen. Er gewährt "Domain\TestUser1" Vollzugriff auf alle Dateien unter "C:\Test", er durchläuft Unterordner von "C:\Test", und ändert anschließend alle gefundenen Dateien. Dieser Befehl hat keine Auswirkung auf Verzeichnisse.
xcacls.vbs c:\test\ /g domain\testuser1:f /s /l "c:\xcacls.log"
Dieser Befehl ersetzt bestehende Berechtigungen. Er gewährt "Domain\TestUser1" Vollzugriff auf alle Unterordner von "C:\Test" und protokolliert sie in "C:\Xcacls.log". Dieser Befehl hat keine Auswirkungen auf Dateien und durchläuft keine Verzeichnisse.
xcacls.vbs c:\test\readme.txt /o "machinea\group1"
Dieser Befehl ändert den Besitzer von "Readme.txt" in die Gruppe "MachineA\Group1".
xcacls.vbs c:\test\badcode.exe /r "machinea\group1" /r "domain\testuser1"
Dieser Befehl hebt alle Berechtigungen für "C:\Test\Badcode.exe" für "MachineA\Group1" und für "Domain\TestUser1" auf.
xcacls.vbs c:\test\subdir1 /i enable /q
Dieser Befehl aktiviert die Vererbung im Ordner "C:\Test\Subdir1". Er unterdrückt die Bildschirmausgabe.
xcacls.vbs \\servera\sharez\testpage.htm /p "domain\group2":14
Dieser Befehl stellt mithilfe der Windows-Verwaltungsinstrumentation (WMI) eine Remoteverbindung zu "\\ServerA\ShareZ" her. Er ruft anschließend den lokalen Pfad für diese Freigabe ab und ändert, unter diesem Pfad, die Berechtigungen für "Testpage.htm". Er lässt die bestehenden Bedingungen von "Domain\Group2" unverändert, fügt jedoch Berechtigung 1 (Daten lesen) und 4 (Erweiterte Attribute lesen) hinzu. Der Befehl löscht andere Berechtigungen für die Datei, da die Befehlszeilenoption /e nicht verwendet wurde.
xcacls.vbs d:\default.htm /g "domain\group2":f /server servera /user servera\admin /pass password /e
Dieser Befehl verwendet WMI, um als "ServerA\Admin" eine Remoteverbindung zu "ServerA" herzustellen, und gewährt anschließend "Domain\Group2" vollständige Berechtigungen für "Default.htm". Bestehende Berechtigungen für "Domain\Group2" gehen verloren, und andere Berechtigungen für die Datei bleiben bestehen.

Informationsquellen

Weitere Informationen über die Verwendung von "Xcacls.exe" finden Sie in folgendem Artikel der Microsoft Knowledge Base:
318754  (http://support.microsoft.com/kb/318754/DE/ ) SO WIRD'S GEMACHT: Verwenden von "Xcacls.exe" zum Ändern von NTFS-Berechtigungen

Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Home Edition
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Professional Edition
Keywords: 
kbhowtomaster KB825751
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.
Freigeben
Weitere Supportoptionen
Microsoft Community-Supportforen
Kontaktieren Sie uns direkt
Zertifizierten Partner finden
Microsoft Store