RegistrySecurity RegistrySecurity RegistrySecurity RegistrySecurity Class

Définition

Représente la sécurité du contrôle d'accès Windows d'une clé de Registre.Represents the Windows access control security for a registry key. Cette classe ne peut pas être héritée.This class cannot be inherited.

public ref class RegistrySecurity sealed : System::Security::AccessControl::NativeObjectSecurity
[System.Security.SecurityCritical]
public sealed class RegistrySecurity : System.Security.AccessControl.NativeObjectSecurity
type RegistrySecurity = class
    inherit NativeObjectSecurity
Public NotInheritable Class RegistrySecurity
Inherits NativeObjectSecurity
Héritage
Attributs

Exemples

Cette section contient deux exemples de code.This section contains two code examples. Le premier exemple montre comment compatible de fusion de règles lorsque ajoutés et supprimés et le second illustre comment les indicateurs d’héritage et de propagation affectent l’ajout et la suppression de règles.The first example shows how compatible rules merge when added and removed, and the second shows how inheritance and propagation flags affect the addition and deletion of rules.

Exemple 1Example 1

Le code suivant montre l’exemple comment la RemoveAccessRule méthode supprime les droits à partir d’une règle compatible et comment la AddAccessRule méthode fusionne des droits avec les règles compatibles.The following code example shows how the RemoveAccessRule method removes rights from a compatible rule, and how the AddAccessRule method merges rights with compatible rules.

L’exemple crée un RegistrySecurity de l’objet et ajoute une règle qui autorise l’utilisateur actuel RegistryRights.ReadKey droits.The example creates a RegistrySecurity object and adds a rule that allows the current user RegistryRights.ReadKey rights. L’exemple crée ensuite une règle qui accorde à l’utilisateur RegistryRights.SetValue, avec le même héritage et les droits de la propagation, ainsi que la première règle utilise le RemoveAccessRule méthode pour supprimer cette nouvelle règle à partir de la RegistrySecurity objet.The example then creates a rule that grants the user RegistryRights.SetValue, with the same inheritance and propagation rights as the first rule, and uses the RemoveAccessRule method to remove this new rule from the RegistrySecurity object. SetValue est un composant de ReadKey, donc il est supprimé de la règle compatible.SetValue is a constituent of ReadKey, so it is removed from the compatible rule. Les règles dans le RegistrySecurity objet s’affichent, présentent les composants restants du ReadKey.The rules in the RegistrySecurity object are displayed, showing the remaining constituents of ReadKey.

L’exemple de code appelle ensuite la AddAccessRule méthode pour fusionner le SetValue avec le bouton droit dans la règle dans le RegistrySecurity objet.The example code then calls the AddAccessRule method to merge the SetValue right back into the rule in the RegistrySecurity object.

Notes

Cet exemple ne s’attache pas l’objet de sécurité à un RegistryKey objet.This example does not attach the security object to a RegistryKey object. Le deuxième exemple dans cette section attache un objet de sécurité, et comme les exemples de RegistryKey.GetAccessControl et RegistryKey.SetAccessControl.The second example in this section attaches a security object, and so do the examples in RegistryKey.GetAccessControl and RegistryKey.SetAccessControl.


using System;
using System.Security.AccessControl;
using System.Security.Principal;
using System.Security;
using Microsoft.Win32;

public class Example
{

    public static void Main()
    {

        string user = Environment.UserDomainName + "\\"
            + Environment.UserName;

        // Create a security object that grants no access.
        RegistrySecurity mSec = new RegistrySecurity();

        // Add a rule that grants the current user ReadKey
        // rights. ReadKey is a combination of four other 
        // rights. The rule is inherited by all 
        // contained subkeys.
        RegistryAccessRule rule = new RegistryAccessRule(user, 
            RegistryRights.ReadKey, 
            InheritanceFlags.ContainerInherit, 
            PropagationFlags.None, 
            AccessControlType.Allow);
        mSec.AddAccessRule(rule);

        // Create a rule that allows the current user only the 
        // right to query the key/value pairs of a key, using  
        // the same inheritance and propagation flags as the
        // first rule. QueryValues is a constituent of 
        // ReadKey, so when this rule is removed, using the 
        // RemoveAccessRule method, ReadKey is broken into
        // its constituent parts.
        rule = new RegistryAccessRule(user, 
            RegistryRights.QueryValues, 
            InheritanceFlags.ContainerInherit, 
            PropagationFlags.None, 
            AccessControlType.Allow);
        mSec.RemoveAccessRule(rule);

        // Display the rules in the security object.
        ShowSecurity(mSec);

        // Add the second rule back. It merges with the 
        // existing rule, so that the rule is now displayed
        // as ReadKey.
        mSec.AddAccessRule(rule);

        // Display the rules in the security object.
        ShowSecurity(mSec);
    }

    private static void ShowSecurity(RegistrySecurity security)
    {
        Console.WriteLine("\r\nCurrent access rules:\r\n");

        foreach( RegistryAccessRule ar in security.GetAccessRules(true, true, typeof(NTAccount)) )
        {
            Console.WriteLine("        User: {0}", ar.IdentityReference);
            Console.WriteLine("        Type: {0}", ar.AccessControlType);
            Console.WriteLine("      Rights: {0}", ar.RegistryRights);
            Console.WriteLine(" Inheritance: {0}", ar.InheritanceFlags);
            Console.WriteLine(" Propagation: {0}", ar.PropagationFlags);
            Console.WriteLine("   Inherited? {0}", ar.IsInherited);
            Console.WriteLine();
        }
    }
}

/* This code example produces output similar to following:

Current access rules:

        User: TestDomain\TestUser
        Type: Allow
      Rights: EnumerateSubKeys, Notify, ReadPermissions
 Inheritance: ContainerInherit
 Propagation: None
   Inherited? False


Current access rules:

        User: TestDomain\TestUser
        Type: Allow
      Rights: ReadKey
 Inheritance: ContainerInherit
 Propagation: None
   Inherited? False
 */
Option Explicit
Imports System
Imports System.Security.AccessControl
Imports System.Security.Principal
Imports System.Security
Imports Microsoft.Win32

Public Class Example

    Public Shared Sub Main()

        Dim user As String = Environment.UserDomainName _ 
            & "\" & Environment.UserName

        ' Create a security object that grants no access.
        Dim mSec As New RegistrySecurity()

        ' Add a rule that grants the current user ReadKey
        ' rights. ReadKey is a combination of four other 
        ' rights. The rule is inherited by all 
        ' contained subkeys.
        Dim rule As New RegistryAccessRule(user, _
            RegistryRights.ReadKey, _
            InheritanceFlags.ContainerInherit, _
            PropagationFlags.None, _
            AccessControlType.Allow)
        mSec.AddAccessRule(rule)

        ' Create a rule that allows the current user only the 
        ' right to query the key/value pairs of a key, using  
        ' the same inheritance and propagation flags as the
        ' first rule. QueryValues is a constituent of 
        ' ReadKey, so when this rule is removed, using the 
        ' RemoveAccessRule method, ReadKey is broken into
        ' its constituent parts.
        rule = New RegistryAccessRule(user, _
            RegistryRights.QueryValues, _
            InheritanceFlags.ContainerInherit, _
            PropagationFlags.None, _
            AccessControlType.Allow)
        mSec.RemoveAccessRule(rule)

        ' Display the rules in the security object.
        ShowSecurity(mSec)

        ' Add the second rule back. It merges with the 
        ' existing rule, so that the rule is now displayed
        ' as ReadKey.
        mSec.AddAccessRule(rule)

        ' Display the rules in the security object.
        ShowSecurity(mSec)

    End Sub 

    Private Shared Sub ShowSecurity(ByVal security As RegistrySecurity)
        Console.WriteLine(vbCrLf & "Current access rules:" & vbCrLf)

        For Each ar As RegistryAccessRule In _
            security.GetAccessRules(True, True, GetType(NTAccount))

            Console.WriteLine("        User: {0}", ar.IdentityReference)
            Console.WriteLine("        Type: {0}", ar.AccessControlType)
            Console.WriteLine("      Rights: {0}", ar.RegistryRights)
            Console.WriteLine(" Inheritance: {0}", ar.InheritanceFlags)
            Console.WriteLine(" Propagation: {0}", ar.PropagationFlags)
            Console.WriteLine("   Inherited? {0}", ar.IsInherited)
            Console.WriteLine()
        Next

    End Sub
End Class 

'This code example produces output similar to following:
'
'Current access rules:
'
'        User: TestDomain\TestUser
'        Type: Allow
'      Rights: EnumerateSubKeys, Notify, ReadPermissions
' Inheritance: ContainerInherit
' Propagation: None
'   Inherited? False
'
'
'Current access rules:
'
'        User: TestDomain\TestUser
'        Type: Allow
'      Rights: ReadKey
' Inheritance: ContainerInherit
' Propagation: None
'   Inherited? False
'

Exemple 2Example 2

L’exemple de code suivant montre les règles d’accès avec héritage et de propagation.The following code example demonstrates access rules with inheritance and propagation. L’exemple crée un RegistrySecurity de l’objet, puis crée et ajoute deux règles qui ont le ContainerInherit indicateur.The example creates a RegistrySecurity object, then creates and adds two rules that have the ContainerInherit flag. La première règle n’a aucun indicateur de propagation, tandis que la seconde a NoPropagateInherit et InheritOnly.The first rule has no propagation flags, while the second has NoPropagateInherit and InheritOnly.

Le programme affiche les règles dans le RegistrySecurity objet, puis utilise le RegistrySecurity objet à créer une sous-clé.The program displays the rules in the RegistrySecurity object, and then uses the RegistrySecurity object to create a subkey. Le programme crée un enfant de sous-clés et un petit-enfant, puis affiche la sécurité de chaque sous-clé.The program creates a child subkey and a grandchild subkey, then displays the security for each subkey. Enfin, le programme supprime les clés de test.Finally, the program deletes the test keys.


using System;
using System.Security.AccessControl;
using System.Security.Principal;
using System.Security;
using Microsoft.Win32;

public class Example
{
    public static void Main()
    {
        const string TestKey = "TestKey3927";
        RegistryKey cu = Registry.CurrentUser;

        string user = Environment.UserDomainName + 
            "\\" + Environment.UserName;

        // Create a security object that grants no access.
        RegistrySecurity mSec = new RegistrySecurity();

        // Add a rule that grants the current user the right
        // to read and enumerate the name/value pairs in a key, 
        // to read its access and audit rules, to enumerate
        // its subkeys, to create subkeys, and to delete the key. 
        // The rule is inherited by all contained subkeys.
        //
        RegistryAccessRule rule = new RegistryAccessRule(user, 
           RegistryRights.ReadKey | RegistryRights.WriteKey 
               | RegistryRights.Delete, 
           InheritanceFlags.ContainerInherit, 
           PropagationFlags.None, 
           AccessControlType.Allow
        );
        mSec.AddAccessRule(rule);

        // Add a rule that allows the current user the right
        // right to set the name/value pairs in a key. 
        // This rule is inherited by contained subkeys, but
        // propagation flags limit it to immediate child 
        // subkeys.
        rule = new RegistryAccessRule(user, 
            RegistryRights.ChangePermissions, 
            InheritanceFlags.ContainerInherit, 
            PropagationFlags.InheritOnly | 
                PropagationFlags.NoPropagateInherit, 
            AccessControlType.Allow);
        mSec.AddAccessRule(rule);

        // Display the rules in the security object.
        ShowSecurity(mSec);

        // Create the test key using the security object.
        //
        RegistryKey rk = cu.CreateSubKey(TestKey, 
            RegistryKeyPermissionCheck.ReadWriteSubTree, mSec);

        // Create a child subkey and a grandchild subkey, 
        // without security.
        RegistryKey rkChild = rk.CreateSubKey("ChildKey", 
            RegistryKeyPermissionCheck.ReadWriteSubTree);
        RegistryKey rkGrandChild = 
            rkChild.CreateSubKey("GrandChildKey", 
                RegistryKeyPermissionCheck.ReadWriteSubTree);

        Show(rk);
        Show(rkChild);
        Show(rkGrandChild);

        rkGrandChild.Close();
        rkChild.Close();
        rk.Close();

        cu.DeleteSubKeyTree(TestKey);
    }

    private static void Show(RegistryKey rk)
    {
        Console.WriteLine(rk.Name);
        ShowSecurity(rk.GetAccessControl());
    }

    private static void ShowSecurity(RegistrySecurity security)
    {
        Console.WriteLine("\r\nCurrent access rules:\r\n");

        foreach( RegistryAccessRule ar in security.GetAccessRules(true, true, typeof(NTAccount)) )
        {

            Console.WriteLine("        User: {0}", ar.IdentityReference);
            Console.WriteLine("        Type: {0}", ar.AccessControlType);
            Console.WriteLine("      Rights: {0}", ar.RegistryRights);
            Console.WriteLine(" Inheritance: {0}", ar.InheritanceFlags);
            Console.WriteLine(" Propagation: {0}", ar.PropagationFlags);
            Console.WriteLine("   Inherited? {0}", ar.IsInherited);
            Console.WriteLine();
        }

    }
}

/* This code example produces output similar to following:

Current access rules:

        User: TestDomain\TestUser
        Type: Allow
      Rights: SetValue, CreateSubKey, Delete, ReadKey
 Inheritance: ContainerInherit
 Propagation: None
   Inherited? False

        User: TestDomain\TestUser
        Type: Allow
      Rights: ChangePermissions
 Inheritance: ContainerInherit
 Propagation: NoPropagateInherit, InheritOnly
   Inherited? False

HKEY_CURRENT_USER\TestKey3927

Current access rules:

        User: TestDomain\TestUser
        Type: Allow
      Rights: SetValue, CreateSubKey, Delete, ReadKey
 Inheritance: ContainerInherit
 Propagation: None
   Inherited? False

        User: TestDomain\TestUser
        Type: Allow
      Rights: ChangePermissions
 Inheritance: ContainerInherit
 Propagation: NoPropagateInherit, InheritOnly
   Inherited? False

HKEY_CURRENT_USER\TestKey3927\ChildKey

Current access rules:

        User: TestDomain\TestUser
        Type: Allow
      Rights: SetValue, CreateSubKey, Delete, ReadKey
 Inheritance: ContainerInherit
 Propagation: None
   Inherited? True

        User: TestDomain\TestUser
        Type: Allow
      Rights: ChangePermissions
 Inheritance: None
 Propagation: None
   Inherited? True

HKEY_CURRENT_USER\TestKey3927\ChildKey\GrandChildKey

Current access rules:

        User: TestDomain\TestUser
        Type: Allow
      Rights: SetValue, CreateSubKey, Delete, ReadKey
 Inheritance: ContainerInherit
 Propagation: None
   Inherited? True
 */
Option Explicit
Imports System
Imports System.Security.AccessControl
Imports System.Security.Principal
Imports System.Security
Imports Microsoft.Win32

Public Class Example

    Public Shared Sub Main()

        Const TestKey As String = "TestKey3927"
        Dim cu As RegistryKey = Registry.CurrentUser

        Dim user As String = Environment.UserDomainName _ 
            & "\" & Environment.UserName

        ' Create a security object that grants no access.
        Dim mSec As New RegistrySecurity()

        ' Add a rule that grants the current user the right
        ' to read and enumerate the name/value pairs in a key, 
        ' to read its access and audit rules, to enumerate
        ' its subkeys, to create subkeys, and to delete the key. 
        ' The rule is inherited by all contained subkeys.
        '
        Dim rule As New RegistryAccessRule(user, _
            RegistryRights.ReadKey Or RegistryRights.WriteKey _
                Or RegistryRights.Delete, _
            InheritanceFlags.ContainerInherit, _
            PropagationFlags.None, _
            AccessControlType.Allow)
        mSec.AddAccessRule(rule)

        ' Add a rule that allows the current user the right
        ' right to set the name/value pairs in a key. 
        ' This rule is inherited by contained subkeys, but
        ' propagation flags limit it to immediate child 
        ' subkeys.
        rule = New RegistryAccessRule(user, _
            RegistryRights.ChangePermissions, _
            InheritanceFlags.ContainerInherit, _
            PropagationFlags.InheritOnly Or PropagationFlags.NoPropagateInherit, _
            AccessControlType.Allow)
        mSec.AddAccessRule(rule)

        ' Display the rules in the security object.
        ShowSecurity(mSec)

        ' Create the test key using the security object.
        '
        Dim rk As RegistryKey = cu.CreateSubKey(TestKey, _
            RegistryKeyPermissionCheck.ReadWriteSubTree, _
            mSec)

        ' Create a child subkey and a grandchild subkey, 
        ' without security.
        Dim rkChild As RegistryKey= rk.CreateSubKey("ChildKey", _
            RegistryKeyPermissionCheck.ReadWriteSubTree)
        Dim rkGrandChild As RegistryKey = _
            rkChild.CreateSubKey("GrandChildKey", _
                RegistryKeyPermissionCheck.ReadWriteSubTree)

        Show(rk)
        Show(rkChild)
        Show(rkGrandChild)

        rkGrandChild.Close()
        rkChild.Close()
        rk.Close()

        cu.DeleteSubKeyTree(TestKey)
    End Sub 

    Private Shared Sub Show(ByVal rk As RegistryKey)
        Console.WriteLine(rk.Name)            
        ShowSecurity(rk.GetAccessControl())
    End Sub

    Private Shared Sub ShowSecurity(ByVal security As RegistrySecurity)
        Console.WriteLine(vbCrLf & "Current access rules:" & vbCrLf)

        For Each ar As RegistryAccessRule In _
            security.GetAccessRules(True, True, GetType(NTAccount))

            Console.WriteLine("        User: {0}", ar.IdentityReference)
            Console.WriteLine("        Type: {0}", ar.AccessControlType)
            Console.WriteLine("      Rights: {0}", ar.RegistryRights)
            Console.WriteLine(" Inheritance: {0}", ar.InheritanceFlags)
            Console.WriteLine(" Propagation: {0}", ar.PropagationFlags)
            Console.WriteLine("   Inherited? {0}", ar.IsInherited)
            Console.WriteLine()
        Next

    End Sub
End Class 

'This code example produces output similar to following:
'
'Current access rules:
'
'        User: TestDomain\TestUser
'        Type: Allow
'      Rights: SetValue, CreateSubKey, Delete, ReadKey
' Inheritance: ContainerInherit
' Propagation: None
'   Inherited? False
'
'        User: TestDomain\TestUser
'        Type: Allow
'      Rights: ChangePermissions
' Inheritance: ContainerInherit
' Propagation: NoPropagateInherit, InheritOnly
'   Inherited? False
'
'HKEY_CURRENT_USER\TestKey3927
'
'Current access rules:
'
'        User: TestDomain\TestUser
'        Type: Allow
'      Rights: SetValue, CreateSubKey, Delete, ReadKey
' Inheritance: ContainerInherit
' Propagation: None
'   Inherited? False
'
'        User: TestDomain\TestUser
'        Type: Allow
'      Rights: ChangePermissions
' Inheritance: ContainerInherit
' Propagation: NoPropagateInherit, InheritOnly
'   Inherited? False
'
'HKEY_CURRENT_USER\TestKey3927\ChildKey
'
'Current access rules:
'
'        User: TestDomain\TestUser
'        Type: Allow
'      Rights: SetValue, CreateSubKey, Delete, ReadKey
' Inheritance: ContainerInherit
' Propagation: None
'   Inherited? True
'
'        User: TestDomain\TestUser
'        Type: Allow
'      Rights: ChangePermissions
' Inheritance: None
' Propagation: None
'   Inherited? True
'
'HKEY_CURRENT_USER\TestKey3927\ChildKey\GrandChildKey
'
'Current access rules:
'
'        User: TestDomain\TestUser
'        Type: Allow
'      Rights: SetValue, CreateSubKey, Delete, ReadKey
' Inheritance: ContainerInherit
' Propagation: None
'   Inherited? True

Remarques

Un RegistrySecurity objet spécifie les droits d’accès pour une clé de Registre et spécifie également la façon dont les tentatives d’accès sont auditées.A RegistrySecurity object specifies access rights for a registry key, and also specifies how access attempts are audited. Droits d’accès à la clé de Registre sont exprimées sous forme de règles, chaque règle d’accès représenté par un RegistryAccessRule objet.Access rights to the registry key are expressed as rules, with each access rule represented by a RegistryAccessRule object. Chaque règle d’audit est représenté par un RegistryAuditRule objet.Each auditing rule is represented by a RegistryAuditRule object.

Cela reflète le système de sécurité Windows sous-jacent, dans lequel chaque objet sécurisable a au plus une liste discretionary access control (DACL) qui contrôle l’accès à l’objet sécurisé et au plus un accès contrôle liste système (SACL) qui spécifie les accès tentatives sont auditées.This mirrors the underlying Windows security system, in which each securable object has at most one discretionary access control list (DACL) that controls access to the secured object, and at most one system access control list (SACL) that specifies which access attempts are audited. Le DACL et les SACL sont classés les listes d’entrées de contrôle d’accès (ACE) qui spécifient les accès et audit pour les utilisateurs et groupes.The DACL and SACL are ordered lists of access control entries (ACE) that specify access and auditing for users and groups. Un RegistryAccessRule ou RegistryAuditRule objet peut représenter plusieurs ACE.A RegistryAccessRule or RegistryAuditRule object might represent more than one ACE.

Notes

Sécurité de contrôle d’accès Windows peut uniquement être appliquée aux clés de Registre.Windows access control security can only be applied to registry keys. Il ne peut pas être appliqué aux paires clé/valeur individuelle stockées dans une clé.It cannot be applied to individual key/value pairs stored in a key.

Le RegistrySecurity, RegistryAccessRule, et RegistryAuditRule classes masquent les détails d’implémentation de l’ACL et les ACE.The RegistrySecurity, RegistryAccessRule, and RegistryAuditRule classes hide the implementation details of ACLs and ACEs. Ils permettent d’ignorer les différents types d’ACE dix-sept et la complexité du maintien correctement l’héritage et la propagation de droits d’accès.They allow you to ignore the seventeen different ACE types and the complexity of correctly maintaining inheritance and propagation of access rights. Ces objets sont également conçus pour empêcher les erreurs de contrôle d’accès courantes suivantes :These objects are also designed to prevent the following common access control errors:

  • Création d’un descripteur de sécurité avec une liste DACL null.Creating a security descriptor with a null DACL. Une référence null à une liste DACL permet à tout utilisateur à ajouter des règles d’accès à un objet, créant potentiellement une attaque par déni de service.A null reference to a DACL allows any user to add access rules to an object, potentially creating a denial-of-service attack. Un nouveau RegistrySecurity objet commence toujours par une liste DACL vide, ce qui refuse tout accès à tous les utilisateurs.A new RegistrySecurity object always starts with an empty DACL, which denies all access for all users.

  • Violation de l’ordre canonique d’ACE.Violating the canonical ordering of ACEs. Si la liste ACE dans la liste DACL n’est pas conservée dans l’ordre canonique, les utilisateurs peuvent par inadvertance un accès à l’objet sécurisé.If the ACE list in the DACL is not kept in the canonical order, users might inadvertently be given access to the secured object. Par exemple, les droits d’accès refusé doivent toujours apparaître avant des droits d’accès autorisés.For example, denied access rights must always appear before allowed access rights. RegistrySecurity objets conservent l’ordre correct en interne.RegistrySecurity objects maintain the correct order internally.

  • Manipulation des indicateurs de descripteurs de sécurité, qui doivent être sous le contrôle de gestionnaire de ressources uniquement.Manipulating security descriptor flags, which should be under resource manager control only.

  • Création de combinaisons non valides d’indicateurs d’ACE.Creating invalid combinations of ACE flags.

  • Manipulation des ACE héritées.Manipulating inherited ACEs. Héritage et propagation sont gérés par le Gestionnaire de ressources, en réponse aux modifications apportées aux règles d’accès et d’audit.Inheritance and propagation are handled by the resource manager, in response to changes you make to access and audit rules.

  • Insertion ACE dénuée de sens dans les ACL.Inserting meaningless ACEs into ACLs.

Les seules fonctionnalités non prises en charge par les objets de sécurité .NET sont des activités dangereuses doivent être évitées par la majorité des développeurs d’applications, telles que les éléments suivants :The only capabilities not supported by the .NET security objects are dangerous activities that should be avoided by the majority of application developers, such as the following:

  • Tâches de bas niveau qui sont normalement effectuées par le Gestionnaire de ressources.Low-level tasks that are normally performed by the resource manager.

  • Ajout ou suppression des entrées de contrôle d’accès de manière à ne conserve pas l’ordre canonique.Adding or removing access control entries in ways that do not maintain the canonical ordering.

Pour modifier la sécurité de contrôle d’accès Windows pour une clé de Registre, utilisez la RegistryKey.GetAccessControl méthode pour obtenir le RegistrySecurity objet.To modify Windows access control security for a registry key, use the RegistryKey.GetAccessControl method to get the RegistrySecurity object. Modifier l’objet de sécurité en ajoutant et supprimant des règles et ensuite utiliser le RegistryKey.SetAccessControl méthode pour le rattacher.Modify the security object by adding and removing rules, and then use the RegistryKey.SetAccessControl method to reattach it.

Important

Modifications apportées à un RegistrySecurity objet n’affectent pas les niveaux d’accès de la clé de Registre jusqu'à ce que vous appeliez la RegistryKey.SetAccessControl méthode pour attribuer l’objet de sécurité modifié à la clé de Registre.Changes you make to a RegistrySecurity object do not affect the access levels of the registry key until you call the RegistryKey.SetAccessControl method to assign the altered security object to the registry key.

Pour copier la sécurité de contrôle d’accès à partir d’une clé de Registre à un autre, utilisez la RegistryKey.GetAccessControl méthode pour obtenir un RegistrySecurity représentant les règles d’accès et d’audit pour la première clé de Registre de l’objet et comment utiliser le RegistryKey.SetAccessControl méthode pour attribuer ces règles à la deuxième clé de Registre.To copy access control security from one registry key to another, use the RegistryKey.GetAccessControl method to get a RegistrySecurity object representing the access and audit rules for the first registry key, and then use the RegistryKey.SetAccessControl method to assign those rules to the second registry key. Vous pouvez également affecter les règles à une deuxième clé de Registre avec une RegistryKey.OpenSubKey ou RegistryKey.CreateSubKey méthode qui prend un RegistrySecurity paramètre d’objet.You can also assign the rules to a second registry key with an RegistryKey.OpenSubKey or RegistryKey.CreateSubKey method that takes a RegistrySecurity object parameter.

Les utilisateurs avec un investissement dans le langage de définition de descripteur de sécurité (SDDL) peuvent utiliser le SetSecurityDescriptorSddlForm méthode pour définir des règles d’accès pour une clé de Registre et le GetSecurityDescriptorSddlForm méthode pour obtenir une chaîne qui représente les règles d’accès au format SDDL.Users with an investment in the security descriptor definition language (SDDL) can use the SetSecurityDescriptorSddlForm method to set access rules for a registry key, and the GetSecurityDescriptorSddlForm method to obtain a string that represents the access rules in SDDL format. Cela n’est pas recommandé pour un nouveau développement.This is not recommended for new development.

Constructeurs

RegistrySecurity() RegistrySecurity() RegistrySecurity() RegistrySecurity()

Initialise une nouvelle instance de la classe RegistrySecurity avec des valeurs par défaut.Initializes a new instance of the RegistrySecurity class with default values.

Propriétés

AccessRightType AccessRightType AccessRightType AccessRightType

Obtient le type d'énumération utilisé par la classe RegistrySecurity pour représenter des droits d'accès.Gets the enumeration type that the RegistrySecurity class uses to represent access rights.

AccessRulesModified AccessRulesModified AccessRulesModified AccessRulesModified

Obtient une valeur booléenne qui spécifie si les règles d’accès associées à cet objet ObjectSecurity ont été modifiées.Gets or sets a Boolean value that specifies whether the access rules associated with this ObjectSecurity object have been modified.

(Inherited from ObjectSecurity)
AccessRuleType AccessRuleType AccessRuleType AccessRuleType

Obtient le type utilisé par la classe RegistrySecurity pour représenter des règles d'accès.Gets the type that the RegistrySecurity class uses to represent access rules.

AreAccessRulesCanonical AreAccessRulesCanonical AreAccessRulesCanonical AreAccessRulesCanonical

Obtient une valeur booléenne qui spécifie si les règles d’accès associées à cet objet ObjectSecurity suivent un ordre canonique.Gets a Boolean value that specifies whether the access rules associated with this ObjectSecurity object are in canonical order.

(Inherited from ObjectSecurity)
AreAccessRulesProtected AreAccessRulesProtected AreAccessRulesProtected AreAccessRulesProtected

Obtient une valeur booléenne qui spécifie si la liste de contrôle d’accès discrétionnaire (DACL) associée à cet objet ObjectSecurity est protégée.Gets a Boolean value that specifies whether the Discretionary Access Control List (DACL) associated with this ObjectSecurity object is protected.

(Inherited from ObjectSecurity)
AreAuditRulesCanonical AreAuditRulesCanonical AreAuditRulesCanonical AreAuditRulesCanonical

Obtient une valeur booléenne qui spécifie si les règles d’audit associées à cet objet ObjectSecurity suivent un ordre canonique.Gets a Boolean value that specifies whether the audit rules associated with this ObjectSecurity object are in canonical order.

(Inherited from ObjectSecurity)
AreAuditRulesProtected AreAuditRulesProtected AreAuditRulesProtected AreAuditRulesProtected

Obtient une valeur booléenne qui spécifie si la liste de contrôle d’accès système (SACL) associée à cet objet ObjectSecurity est protégée.Gets a Boolean value that specifies whether the System Access Control List (SACL) associated with this ObjectSecurity object is protected.

(Inherited from ObjectSecurity)
AuditRulesModified AuditRulesModified AuditRulesModified AuditRulesModified

Obtient ou définit une valeur booléenne qui spécifie si les règles d’audit associées à cet objet ObjectSecurity ont été modifiées.Gets or sets a Boolean value that specifies whether the audit rules associated with this ObjectSecurity object have been modified.

(Inherited from ObjectSecurity)
AuditRuleType AuditRuleType AuditRuleType AuditRuleType

Obtient le type utilisé par la classe RegistrySecurity pour représenter des règles d'audit.Gets the type that the RegistrySecurity class uses to represent audit rules.

GroupModified GroupModified GroupModified GroupModified

Obtient ou définit une valeur booléenne qui spécifie si le groupe associé à l’objet sécurisable a été modifié.Gets or sets a Boolean value that specifies whether the group associated with the securable object has been modified.

(Inherited from ObjectSecurity)
IsContainer IsContainer IsContainer IsContainer

Obtient une valeur booléenne qui spécifie si cet objet ObjectSecurity est un objet conteneur.Gets a Boolean value that specifies whether this ObjectSecurity object is a container object.

(Inherited from ObjectSecurity)
IsDS IsDS IsDS IsDS

Obtient une valeur booléenne qui spécifie si cet objet ObjectSecurity est un objet d’annuaire.Gets a Boolean value that specifies whether this ObjectSecurity object is a directory object.

(Inherited from ObjectSecurity)
OwnerModified OwnerModified OwnerModified OwnerModified

Obtient ou définit une valeur booléenne qui spécifie si le propriétaire de l’objet sécurisable a été modifié.Gets or sets a Boolean value that specifies whether the owner of the securable object has been modified.

(Inherited from ObjectSecurity)

Méthodes

AccessRuleFactory(IdentityReference, Int32, Boolean, InheritanceFlags, PropagationFlags, AccessControlType) AccessRuleFactory(IdentityReference, Int32, Boolean, InheritanceFlags, PropagationFlags, AccessControlType) AccessRuleFactory(IdentityReference, Int32, Boolean, InheritanceFlags, PropagationFlags, AccessControlType) AccessRuleFactory(IdentityReference, Int32, Boolean, InheritanceFlags, PropagationFlags, AccessControlType)

Crée une règle de contrôle d'accès pour l'utilisateur spécifié, avec les droits d'accès, le contrôle d'accès et les indicateurs spécifiés.Creates a new access control rule for the specified user, with the specified access rights, access control, and flags.

AddAccessRule(AccessRule) AddAccessRule(AccessRule) AddAccessRule(AccessRule) AddAccessRule(AccessRule)

Ajoute la règle d'accès spécifiée à la liste de contrôle d'accès discrétionnaire associée à cet objet CommonObjectSecurity.Adds the specified access rule to the Discretionary Access Control List (DACL) associated with this CommonObjectSecurity object.

(Inherited from CommonObjectSecurity)
AddAccessRule(RegistryAccessRule) AddAccessRule(RegistryAccessRule) AddAccessRule(RegistryAccessRule) AddAccessRule(RegistryAccessRule)

Recherche une règle de contrôle d'accès correspondante avec laquelle la nouvelle règle peut être fusionnée.Searches for a matching access control with which the new rule can be merged. Ajoute la nouvelle règle en cas de recherche infructueuse.If none are found, adds the new rule.

AddAuditRule(AuditRule) AddAuditRule(AuditRule) AddAuditRule(AuditRule) AddAuditRule(AuditRule)

Ajoute la règle d'audit spécifiée à la liste de contrôle d'accès système associée à cet objet CommonObjectSecurity.Adds the specified audit rule to the System Access Control List (SACL) associated with this CommonObjectSecurity object.

(Inherited from CommonObjectSecurity)
AddAuditRule(RegistryAuditRule) AddAuditRule(RegistryAuditRule) AddAuditRule(RegistryAuditRule) AddAuditRule(RegistryAuditRule)

Recherche une règle d'audit avec laquelle la nouvelle règle peut être fusionnée.Searches for an audit rule with which the new rule can be merged. Ajoute la nouvelle règle en cas de recherche infructueuse.If none are found, adds the new rule.

AuditRuleFactory(IdentityReference, Int32, Boolean, InheritanceFlags, PropagationFlags, AuditFlags) AuditRuleFactory(IdentityReference, Int32, Boolean, InheritanceFlags, PropagationFlags, AuditFlags) AuditRuleFactory(IdentityReference, Int32, Boolean, InheritanceFlags, PropagationFlags, AuditFlags) AuditRuleFactory(IdentityReference, Int32, Boolean, InheritanceFlags, PropagationFlags, AuditFlags)

Crée une règle d'audit, en spécifiant l'utilisateur auquel elle s'applique, les droits d'accès à auditer, l'héritage et la propagation de la règle, ainsi que le résultat qui déclenche la règle.Creates a new audit rule, specifying the user the rule applies to, the access rights to audit, the inheritance and propagation of the rule, and the outcome that triggers the rule.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetAccessRules(Boolean, Boolean, Type) GetAccessRules(Boolean, Boolean, Type) GetAccessRules(Boolean, Boolean, Type) GetAccessRules(Boolean, Boolean, Type)

Obtient une collection des règles d'accès associées à l'identificateur de sécurité spécifié.Gets a collection of the access rules associated with the specified security identifier.

(Inherited from CommonObjectSecurity)
GetAuditRules(Boolean, Boolean, Type) GetAuditRules(Boolean, Boolean, Type) GetAuditRules(Boolean, Boolean, Type) GetAuditRules(Boolean, Boolean, Type)

Obtient une collection des règles d'audit associées à l'identificateur de sécurité spécifié.Gets a collection of the audit rules associated with the specified security identifier.

(Inherited from CommonObjectSecurity)
GetGroup(Type) GetGroup(Type) GetGroup(Type) GetGroup(Type)

Obtient le groupe principal associé au propriétaire spécifié.Gets the primary group associated with the specified owner.

(Inherited from ObjectSecurity)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fait office de fonction de hachage par défaut.Serves as the default hash function.

(Inherited from Object)
GetOwner(Type) GetOwner(Type) GetOwner(Type) GetOwner(Type)

Obtient le propriétaire associé au groupe principal spécifié.Gets the owner associated with the specified primary group.

(Inherited from ObjectSecurity)
GetSecurityDescriptorBinaryForm() GetSecurityDescriptorBinaryForm() GetSecurityDescriptorBinaryForm() GetSecurityDescriptorBinaryForm()

Retourne un tableau de valeurs d’octets qui représente les informations du descripteur de sécurité de cet objet ObjectSecurity.Returns an array of byte values that represents the security descriptor information for this ObjectSecurity object.

(Inherited from ObjectSecurity)
GetSecurityDescriptorSddlForm(AccessControlSections) GetSecurityDescriptorSddlForm(AccessControlSections) GetSecurityDescriptorSddlForm(AccessControlSections) GetSecurityDescriptorSddlForm(AccessControlSections)

Retourne la représentation SDDL (Security Descriptor Definition Language) des sections spécifiées du descripteur de sécurité associé à cet objet ObjectSecurity.Returns the Security Descriptor Definition Language (SDDL) representation of the specified sections of the security descriptor associated with this ObjectSecurity object.

(Inherited from ObjectSecurity)
GetType() GetType() GetType() GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

(Inherited from Object)
ModifyAccess(AccessControlModification, AccessRule, Boolean) ModifyAccess(AccessControlModification, AccessRule, Boolean) ModifyAccess(AccessControlModification, AccessRule, Boolean) ModifyAccess(AccessControlModification, AccessRule, Boolean)

Applique la modification spécifiée à la liste de contrôle d’accès discrétionnaire (DACL) associée à cet objet CommonObjectSecurity.Applies the specified modification to the Discretionary Access Control List (DACL) associated with this CommonObjectSecurity object.

(Inherited from CommonObjectSecurity)
ModifyAccessRule(AccessControlModification, AccessRule, Boolean) ModifyAccessRule(AccessControlModification, AccessRule, Boolean) ModifyAccessRule(AccessControlModification, AccessRule, Boolean) ModifyAccessRule(AccessControlModification, AccessRule, Boolean)

Applique la modification spécifiée à la liste de contrôle d’accès discrétionnaire (DACL) associée à cet objet ObjectSecurity.Applies the specified modification to the Discretionary Access Control List (DACL) associated with this ObjectSecurity object.

(Inherited from ObjectSecurity)
ModifyAudit(AccessControlModification, AuditRule, Boolean) ModifyAudit(AccessControlModification, AuditRule, Boolean) ModifyAudit(AccessControlModification, AuditRule, Boolean) ModifyAudit(AccessControlModification, AuditRule, Boolean)

Applique la modification spécifiée à la liste de contrôle d’accès système (SACL) associée à cet objet CommonObjectSecurity.Applies the specified modification to the System Access Control List (SACL) associated with this CommonObjectSecurity object.

(Inherited from CommonObjectSecurity)
ModifyAuditRule(AccessControlModification, AuditRule, Boolean) ModifyAuditRule(AccessControlModification, AuditRule, Boolean) ModifyAuditRule(AccessControlModification, AuditRule, Boolean) ModifyAuditRule(AccessControlModification, AuditRule, Boolean)

Applique la modification spécifiée à la liste de contrôle d’accès système (SACL) associée à cet objet ObjectSecurity.Applies the specified modification to the System Access Control List (SACL) associated with this ObjectSecurity object.

(Inherited from ObjectSecurity)
Persist(Boolean, String, AccessControlSections) Persist(Boolean, String, AccessControlSections) Persist(Boolean, String, AccessControlSections) Persist(Boolean, String, AccessControlSections)

Enregistre les sections spécifiées du descripteur de sécurité associé à cet objet ObjectSecurity dans un stockage permanent.Saves the specified sections of the security descriptor associated with this ObjectSecurity object to permanent storage. Nous vous recommandons de définir des valeurs identiques pour les paramètres includeSections passés aux méthodes Constructor et Persist.We recommend that the values of the includeSections parameters passed to the constructor and persist methods be identical.

(Inherited from ObjectSecurity)
Persist(SafeHandle, AccessControlSections) Persist(SafeHandle, AccessControlSections) Persist(SafeHandle, AccessControlSections) Persist(SafeHandle, AccessControlSections)

Enregistre les sections spécifiées du descripteur de sécurité associé à cet objet NativeObjectSecurity dans un stockage permanent.Saves the specified sections of the security descriptor associated with this NativeObjectSecurity object to permanent storage. Nous vous recommandons de définir des valeurs identiques pour les paramètres includeSections passés aux méthodes constructor et persist.We recommend.persist that the values of the includeSections parameters passed to the constructor and persist methods be identical.

(Inherited from NativeObjectSecurity)
Persist(SafeHandle, AccessControlSections, Object) Persist(SafeHandle, AccessControlSections, Object) Persist(SafeHandle, AccessControlSections, Object) Persist(SafeHandle, AccessControlSections, Object)

Enregistre les sections spécifiées du descripteur de sécurité associé à cet objet NativeObjectSecurity dans un stockage permanent.Saves the specified sections of the security descriptor associated with this NativeObjectSecurity object to permanent storage. Nous vous recommandons de définir des valeurs identiques pour les paramètres includeSections passés aux méthodes Constructor et Persist.We recommend that the values of the includeSections parameters passed to the constructor and persist methods be identical.

(Inherited from NativeObjectSecurity)
Persist(String, AccessControlSections) Persist(String, AccessControlSections) Persist(String, AccessControlSections) Persist(String, AccessControlSections)

Enregistre les sections spécifiées du descripteur de sécurité associé à cet objet NativeObjectSecurity dans un stockage permanent.Saves the specified sections of the security descriptor associated with this NativeObjectSecurity object to permanent storage. Nous vous recommandons de définir des valeurs identiques pour les paramètres includeSections passés aux méthodes Constructor et Persist.We recommend that the values of the includeSections parameters passed to the constructor and persist methods be identical.

(Inherited from NativeObjectSecurity)
Persist(String, AccessControlSections, Object) Persist(String, AccessControlSections, Object) Persist(String, AccessControlSections, Object) Persist(String, AccessControlSections, Object)

Enregistre les sections spécifiées du descripteur de sécurité associé à cet objet NativeObjectSecurity dans un stockage permanent.Saves the specified sections of the security descriptor associated with this NativeObjectSecurity object to permanent storage. Nous vous recommandons de définir des valeurs identiques pour les paramètres includeSections passés aux méthodes Constructor et Persist.We recommend that the values of the includeSections parameters passed to the constructor and persist methods be identical.

(Inherited from NativeObjectSecurity)
PurgeAccessRules(IdentityReference) PurgeAccessRules(IdentityReference) PurgeAccessRules(IdentityReference) PurgeAccessRules(IdentityReference)

Supprime toutes les règles d’accès associés au IdentityReference spécifié.Removes all access rules associated with the specified IdentityReference.

(Inherited from ObjectSecurity)
PurgeAuditRules(IdentityReference) PurgeAuditRules(IdentityReference) PurgeAuditRules(IdentityReference) PurgeAuditRules(IdentityReference)

Supprime toutes les règles d'audit associées au IdentityReference spécifié.Removes all audit rules associated with the specified IdentityReference.

(Inherited from ObjectSecurity)
ReadLock() ReadLock() ReadLock() ReadLock()

Verrouille cet objet ObjectSecurity pour un accès en lecture.Locks this ObjectSecurity object for read access.

(Inherited from ObjectSecurity)
ReadUnlock() ReadUnlock() ReadUnlock() ReadUnlock()

Verrouille cet objet ObjectSecurity pour un accès en lecture.Unlocks this ObjectSecurity object for read access.

(Inherited from ObjectSecurity)
RemoveAccessRule(AccessRule) RemoveAccessRule(AccessRule) RemoveAccessRule(AccessRule) RemoveAccessRule(AccessRule)

Supprime les règles d'accès qui contiennent les mêmes identificateur de sécurité et masque d'accès que la règle d'accès spécifiée dans la liste de contrôle d'accès discrétionnaire associée à cet objet CommonObjectSecurity.Removes access rules that contain the same security identifier and access mask as the specified access rule from the Discretionary Access Control List (DACL) associated with this CommonObjectSecurity object.

(Inherited from CommonObjectSecurity)
RemoveAccessRule(RegistryAccessRule) RemoveAccessRule(RegistryAccessRule) RemoveAccessRule(RegistryAccessRule) RemoveAccessRule(RegistryAccessRule)

Recherche une règle de contrôle d'accès ayant les mêmes utilisateur et AccessControlType (autorisation ou refus) que la règle d'accès spécifiée et ayant des indicateurs d'héritage et de propagation compatibles ; si une telle règle est trouvée, les droits contenus dans la règle d'accès spécifiée en sont supprimés.Searches for an access control rule with the same user and AccessControlType (allow or deny) as the specified access rule, and with compatible inheritance and propagation flags; if such a rule is found, the rights contained in the specified access rule are removed from it.

RemoveAccessRuleAll(AccessRule) RemoveAccessRuleAll(AccessRule) RemoveAccessRuleAll(AccessRule) RemoveAccessRuleAll(AccessRule)

Supprime toutes les règles d'accès qui ont le même identificateur de sécurité que la règle d'accès spécifiée dans la liste de contrôle d'accès discrétionnaire associée à cet objet CommonObjectSecurity.Removes all access rules that have the same security identifier as the specified access rule from the Discretionary Access Control List (DACL) associated with this CommonObjectSecurity object.

(Inherited from CommonObjectSecurity)
RemoveAccessRuleAll(RegistryAccessRule) RemoveAccessRuleAll(RegistryAccessRule) RemoveAccessRuleAll(RegistryAccessRule) RemoveAccessRuleAll(RegistryAccessRule)

Recherche toutes les règles de contrôle d'accès ayant les mêmes utilisateur et AccessControlType (autorisation ou refus) que la règle spécifiée et, s'il en existe, les supprime.Searches for all access control rules with the same user and AccessControlType (allow or deny) as the specified rule and, if found, removes them.

RemoveAccessRuleSpecific(AccessRule) RemoveAccessRuleSpecific(AccessRule) RemoveAccessRuleSpecific(AccessRule) RemoveAccessRuleSpecific(AccessRule)

Supprime toutes les règles d'accès qui correspondent exactement à la règle d'accès spécifiée dans la liste de contrôle d'accès discrétionnaire associée à cet objet CommonObjectSecurity.Removes all access rules that exactly match the specified access rule from the Discretionary Access Control List (DACL) associated with this CommonObjectSecurity object.

(Inherited from CommonObjectSecurity)
RemoveAccessRuleSpecific(RegistryAccessRule) RemoveAccessRuleSpecific(RegistryAccessRule) RemoveAccessRuleSpecific(RegistryAccessRule) RemoveAccessRuleSpecific(RegistryAccessRule)

Recherche une règle de contrôle d'accès qui correspond exactement à la règle spécifiée et, si une telle règle est trouvée, la supprime.Searches for an access control rule that exactly matches the specified rule and, if found, removes it.

RemoveAuditRule(AuditRule) RemoveAuditRule(AuditRule) RemoveAuditRule(AuditRule) RemoveAuditRule(AuditRule)

Supprime les règles d'audit qui contiennent les mêmes identificateur de sécurité et masque d'accès que la règle d'audit spécifiée dans la liste de contrôle d'accès système associée à cet objet CommonObjectSecurity.Removes audit rules that contain the same security identifier and access mask as the specified audit rule from the System Access Control List (SACL) associated with this CommonObjectSecurity object.

(Inherited from CommonObjectSecurity)
RemoveAuditRule(RegistryAuditRule) RemoveAuditRule(RegistryAuditRule) RemoveAuditRule(RegistryAuditRule) RemoveAuditRule(RegistryAuditRule)

Recherche une règle de contrôle d'audit ayant le même utilisateur que la règle spécifiée et ayant des indicateurs d'héritage et de propagation compatibles ; si une règle compatible est trouvée, les droits contenus dans la règle spécifiée en sont supprimés.Searches for an audit control rule with the same user as the specified rule, and with compatible inheritance and propagation flags; if a compatible rule is found, the rights contained in the specified rule are removed from it.

RemoveAuditRuleAll(AuditRule) RemoveAuditRuleAll(AuditRule) RemoveAuditRuleAll(AuditRule) RemoveAuditRuleAll(AuditRule)

Supprime toutes les règles d'audit qui ont le même identificateur de sécurité que la règle d'audit spécifiée dans la liste de contrôle d'accès système associée à cet objet CommonObjectSecurity.Removes all audit rules that have the same security identifier as the specified audit rule from the System Access Control List (SACL) associated with this CommonObjectSecurity object.

(Inherited from CommonObjectSecurity)
RemoveAuditRuleAll(RegistryAuditRule) RemoveAuditRuleAll(RegistryAuditRule) RemoveAuditRuleAll(RegistryAuditRule) RemoveAuditRuleAll(RegistryAuditRule)

Recherche toutes les règles d'audit ayant le même utilisateur que la règle spécifiée et, s'il en existe, les supprime.Searches for all audit rules with the same user as the specified rule and, if found, removes them.

RemoveAuditRuleSpecific(AuditRule) RemoveAuditRuleSpecific(AuditRule) RemoveAuditRuleSpecific(AuditRule) RemoveAuditRuleSpecific(AuditRule)

Supprime toutes les règles d'audit qui correspondent exactement à la règle d'audit spécifiée dans la liste de contrôle d'accès système associée à cet objet CommonObjectSecurity.Removes all audit rules that exactly match the specified audit rule from the System Access Control List (SACL) associated with this CommonObjectSecurity object.

(Inherited from CommonObjectSecurity)
RemoveAuditRuleSpecific(RegistryAuditRule) RemoveAuditRuleSpecific(RegistryAuditRule) RemoveAuditRuleSpecific(RegistryAuditRule) RemoveAuditRuleSpecific(RegistryAuditRule)

Recherche une règle d'audit qui correspond exactement à la règle spécifiée et, si une telle règle est trouvée, la supprime.Searches for an audit rule that exactly matches the specified rule and, if found, removes it.

ResetAccessRule(AccessRule) ResetAccessRule(AccessRule) ResetAccessRule(AccessRule) ResetAccessRule(AccessRule)

Supprime toutes les règles d'accès de la liste de contrôle d'accès discrétionnaire associée à cet objet CommonObjectSecurity, puis ajoute la règle d'accès spécifiée.Removes all access rules in the Discretionary Access Control List (DACL) associated with this CommonObjectSecurity object and then adds the specified access rule.

(Inherited from CommonObjectSecurity)
ResetAccessRule(RegistryAccessRule) ResetAccessRule(RegistryAccessRule) ResetAccessRule(RegistryAccessRule) ResetAccessRule(RegistryAccessRule)

Supprime toutes les règles de contrôle d'accès ayant le même utilisateur que la règle spécifiée, indépendamment de AccessControlType, puis ajoute la règle spécifiée.Removes all access control rules with the same user as the specified rule, regardless of AccessControlType, and then adds the specified rule.

SetAccessRule(AccessRule) SetAccessRule(AccessRule) SetAccessRule(AccessRule) SetAccessRule(AccessRule)

Supprime toutes les règles d'accès qui contiennent les mêmes identificateur de sécurité et qualificateur que la règle d'accès spécifiée dans la liste de contrôle d'accès discrétionnaire associée à cet objet CommonObjectSecurity, puis ajoute la règle d'accès spécifiée.Removes all access rules that contain the same security identifier and qualifier as the specified access rule in the Discretionary Access Control List (DACL) associated with this CommonObjectSecurity object and then adds the specified access rule.

(Inherited from CommonObjectSecurity)
SetAccessRule(RegistryAccessRule) SetAccessRule(RegistryAccessRule) SetAccessRule(RegistryAccessRule) SetAccessRule(RegistryAccessRule)

Supprime toutes les règles de contrôle d'accès ayant les mêmes utilisateur et AccessControlType (autorisation ou refus) que la règle spécifiée, puis ajoute la règle spécifiée.Removes all access control rules with the same user and AccessControlType (allow or deny) as the specified rule, and then adds the specified rule.

SetAccessRuleProtection(Boolean, Boolean) SetAccessRuleProtection(Boolean, Boolean) SetAccessRuleProtection(Boolean, Boolean) SetAccessRuleProtection(Boolean, Boolean)

Définit ou supprime la protection des règles d’accès associées à cet objet ObjectSecurity.Sets or removes protection of the access rules associated with this ObjectSecurity object. Les objets parents ne peuvent pas modifier des règles d’accès protégé par le biais de l’héritage.Protected access rules cannot be modified by parent objects through inheritance.

(Inherited from ObjectSecurity)
SetAuditRule(AuditRule) SetAuditRule(AuditRule) SetAuditRule(AuditRule) SetAuditRule(AuditRule)

Supprime toutes les règles d'audit qui contiennent les mêmes identificateur de sécurité et qualificateur que la règle d'audit spécifiée dans la liste de contrôle d'accès système associée à cet objet CommonObjectSecurity, puis ajoute la règle d'audit spécifiée.Removes all audit rules that contain the same security identifier and qualifier as the specified audit rule in the System Access Control List (SACL) associated with this CommonObjectSecurity object and then adds the specified audit rule.

(Inherited from CommonObjectSecurity)
SetAuditRule(RegistryAuditRule) SetAuditRule(RegistryAuditRule) SetAuditRule(RegistryAuditRule) SetAuditRule(RegistryAuditRule)

Supprime toutes les règles d'audit ayant le même utilisateur que la règle spécifiée, quelle que soit la valeur de AuditFlags, puis ajoute la règle spécifiée.Removes all audit rules with the same user as the specified rule, regardless of the AuditFlags value, and then adds the specified rule.

SetAuditRuleProtection(Boolean, Boolean) SetAuditRuleProtection(Boolean, Boolean) SetAuditRuleProtection(Boolean, Boolean) SetAuditRuleProtection(Boolean, Boolean)

Définit ou supprime la protection des règles d’audit associées à cet objet ObjectSecurity.Sets or removes protection of the audit rules associated with this ObjectSecurity object. Les objets parents ne peuvent pas modifier les règles d’audit protégées par le biais de l’héritage.Protected audit rules cannot be modified by parent objects through inheritance.

(Inherited from ObjectSecurity)
SetGroup(IdentityReference) SetGroup(IdentityReference) SetGroup(IdentityReference) SetGroup(IdentityReference)

Définit le groupe principal du descripteur de sécurité associé à cet objet ObjectSecurity.Sets the primary group for the security descriptor associated with this ObjectSecurity object.

(Inherited from ObjectSecurity)
SetOwner(IdentityReference) SetOwner(IdentityReference) SetOwner(IdentityReference) SetOwner(IdentityReference)

Définit le propriétaire du descripteur de sécurité associé à cet objet ObjectSecurity.Sets the owner for the security descriptor associated with this ObjectSecurity object.

(Inherited from ObjectSecurity)
SetSecurityDescriptorBinaryForm(Byte[]) SetSecurityDescriptorBinaryForm(Byte[]) SetSecurityDescriptorBinaryForm(Byte[]) SetSecurityDescriptorBinaryForm(Byte[])

Définit le descripteur de sécurité de cet objet ObjectSecurity à partir du tableau de valeurs, spécifiées en octets.Sets the security descriptor for this ObjectSecurity object from the specified array of byte values.

(Inherited from ObjectSecurity)
SetSecurityDescriptorBinaryForm(Byte[], AccessControlSections) SetSecurityDescriptorBinaryForm(Byte[], AccessControlSections) SetSecurityDescriptorBinaryForm(Byte[], AccessControlSections) SetSecurityDescriptorBinaryForm(Byte[], AccessControlSections)

Définit les sections spécifiées du descripteur de sécurité pour cet objet ObjectSecurity du tableau de valeurs d’octets spécifié.Sets the specified sections of the security descriptor for this ObjectSecurity object from the specified array of byte values.

(Inherited from ObjectSecurity)
SetSecurityDescriptorSddlForm(String) SetSecurityDescriptorSddlForm(String) SetSecurityDescriptorSddlForm(String) SetSecurityDescriptorSddlForm(String)

Définit le descripteur de sécurité de cet objet ObjectSecurity de la chaîne SDDL (Security Descriptor Definition Language) spécifiée.Sets the security descriptor for this ObjectSecurity object from the specified Security Descriptor Definition Language (SDDL) string.

(Inherited from ObjectSecurity)
SetSecurityDescriptorSddlForm(String, AccessControlSections) SetSecurityDescriptorSddlForm(String, AccessControlSections) SetSecurityDescriptorSddlForm(String, AccessControlSections) SetSecurityDescriptorSddlForm(String, AccessControlSections)

Définit les sections spécifiées du descripteur de sécurité de cet objet ObjectSecurity de la chaîne SDDL (Security Descriptor Definition Language) spécifiée.Sets the specified sections of the security descriptor for this ObjectSecurity object from the specified Security Descriptor Definition Language (SDDL) string.

(Inherited from ObjectSecurity)
ToString() ToString() ToString() ToString()

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(Inherited from Object)
WriteLock() WriteLock() WriteLock() WriteLock()

Déverrouille cet objet ObjectSecurity pour un accès en écriture.Locks this ObjectSecurity object for write access.

(Inherited from ObjectSecurity)
WriteUnlock() WriteUnlock() WriteUnlock() WriteUnlock()

Déverrouille cet objet ObjectSecurity pour un accès en écriture.Unlocks this ObjectSecurity object for write access.

(Inherited from ObjectSecurity)

S’applique à