(0) exportieren Drucken
Alle erweitern

FileSystemAuditRule-Klasse

Stellt eine Abstraktion des Zugriffssteuerungseintrags (ACE) dar, der eine Überwachungsregel für eine Datei oder ein Verzeichnis definiert. Diese Klasse kann nicht geerbt werden.

Namespace: System.Security.AccessControl
Assembly: mscorlib (in mscorlib.dll)

public sealed class FileSystemAuditRule : AuditRule
public final class FileSystemAuditRule extends AuditRule
public final class FileSystemAuditRule extends AuditRule
Nicht zutreffend.

Die FileSystemAuditRule-Klasse stellt eine Abstraktion eines zugrunde liegenden Zugriffssteuerungseintrags (ACE) dar, der ein Benutzerkonto, den Typ des bereitzustellenden Zugriffs (Lesen, Schreiben usw.) angibt sowie festlegt, ob eine Überwachung erfolgen soll. Diese Klasse kann auch angeben, wie von Überwachungsregeln geerbt wird und wie diese an Objekte weitergegeben werden.

Um die Datei- und Verzeichnisüberwachung unter Microsoft Windows NT oder später zuzulassen, müssen Sie die Audit Access Security-Richtlinie auf Ihrem Computer aktivieren. Standardmäßig ist diese Richtlinie auf No Auditing festgelegt.

Führen Sie zum Aktivieren der Audit AccessSecurity-Richtlinie die folgenden Schritte aus:

  1. Öffnen Sie das MMC-Snap-In (Microsoft Management Console) Local Security Settings im Ordner Administrative Tools.

  2. Erweitern Sie den Ordner Local Policies, und klicken Sie auf den Ordner Audit Policy.

  3. Doppelklicken Sie auf den Eintrag Audit object access im rechten Bereich des MMC-Snap-Ins, oder klicken Sie mit der rechten Maustaste, und wählen die Eigenschaftenoption zum Anzeigen des Audit object access Properties dialog.

  4. Wählen Sie die Felder Success oder Failure aus, um Erfolge oder Fehler zu protokollieren.

Beachten Sie, dass eine Überwachungsregel für ein Benutzerkonto eine entsprechende Zugriffsregel für das betreffende Benutzerkonto erfordert.

Mit der FileSystemAuditRule-Klasse können Sie eine neue Überwachungsregel erstellen. Sie können diese Regel mit der FileSecurity-Klasse oder DirectorySecurity-Klasse beibehalten.

Im folgenden Codebeispiel wird mithilfe der FileSystemAuditRule-Klasse einer Datei eine Überwachungsregel hinzugefügt und anschließend wieder entfernt. Sie müssen ein gültiges Benutzer- oder Gruppenkonto angeben, um dieses Beispiel auszuführen.

using System;
using System.IO;
using System.Security.AccessControl;

namespace FileSystemExample
{
    class FileExample
    {
        public static void Main()
        {
            try
            {
                string FileName = "test.xml";

                Console.WriteLine("Adding access control entry for " + FileName);

                // Add the access control entry to the file.
                AddFileAuditRule(FileName, @"MYDOMAIN\MyAccount", FileSystemRights.ReadData, AuditFlags.Failure);

                Console.WriteLine("Removing access control entry from " + FileName);

                // Remove the access control entry from the file.
                RemoveFileAuditRule(FileName, @"MYDOMAIN\MyAccount", FileSystemRights.ReadData, AuditFlags.Failure);

                Console.WriteLine("Done.");
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }

            Console.ReadLine();
        }

        // Adds an ACL entry on the specified file for the specified account.
        public static void AddFileAuditRule(string FileName, string Account, FileSystemRights Rights, AuditFlags AuditRule)
        {


            // Get a FileSecurity object that represents the 
            // current security settings.
            FileSecurity fSecurity = File.GetAccessControl(FileName);

            // Add the FileSystemAuditRule to the security settings. 
            fSecurity.AddAuditRule(new FileSystemAuditRule(Account,
                                                            Rights,
                                                            AuditRule));

            // Set the new access settings.
            File.SetAccessControl(FileName, fSecurity);

        }

        // Removes an ACL entry on the specified file for the specified account.
        public static void RemoveFileAuditRule(string FileName, string Account, FileSystemRights Rights, AuditFlags AuditRule)
        {

            // Get a FileSecurity object that represents the 
            // current security settings.
            FileSecurity fSecurity = File.GetAccessControl(FileName);

            // Add the FileSystemAuditRule to the security settings. 
            fSecurity.RemoveAuditRule(new FileSystemAuditRule(Account,
                                                            Rights,
                                                            AuditRule));

            // Set the new access settings.
            File.SetAccessControl(FileName, fSecurity);

        }
    }
}

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

Microsoft .NET Framework 3.0 wird unter Windows Vista, Microsoft Windows XP SP2 und Windows Server 2003 SP1 unterstützt.

.NET Framework

Unterstützt in: 3.0, 2.0
Anzeigen:
© 2014 Microsoft