RegistryAuditRule Конструкторы

Определение

Инициализирует новый экземпляр класса RegistryAuditRule.

Перегрузки

RegistryAuditRule(IdentityReference, RegistryRights, InheritanceFlags, PropagationFlags, AuditFlags)

Инициализирует новый экземпляр класса RegistryAuditRule с указанием пользователя или группы для аудита, прав для аудита, необходимости учитывать наследование и подлежащих аудиту операций (успешных попыток доступа, неудачных попыток доступа или всех попыток доступа).

RegistryAuditRule(String, RegistryRights, InheritanceFlags, PropagationFlags, AuditFlags)

Инициализирует новый экземпляр класса RegistryAuditRule с указанием имени пользователя или группы для аудита, прав для аудита, необходимости учитывать наследование, и подлежащих аудиту операций (успешных попыток доступа, неудачных попыток доступа или всех попыток доступа).

RegistryAuditRule(IdentityReference, RegistryRights, InheritanceFlags, PropagationFlags, AuditFlags)

Инициализирует новый экземпляр класса RegistryAuditRule с указанием пользователя или группы для аудита, прав для аудита, необходимости учитывать наследование и подлежащих аудиту операций (успешных попыток доступа, неудачных попыток доступа или всех попыток доступа).

public:
 RegistryAuditRule(System::Security::Principal::IdentityReference ^ identity, System::Security::AccessControl::RegistryRights registryRights, System::Security::AccessControl::InheritanceFlags inheritanceFlags, System::Security::AccessControl::PropagationFlags propagationFlags, System::Security::AccessControl::AuditFlags flags);
public RegistryAuditRule (System.Security.Principal.IdentityReference identity, System.Security.AccessControl.RegistryRights registryRights, System.Security.AccessControl.InheritanceFlags inheritanceFlags, System.Security.AccessControl.PropagationFlags propagationFlags, System.Security.AccessControl.AuditFlags flags);
new System.Security.AccessControl.RegistryAuditRule : System.Security.Principal.IdentityReference * System.Security.AccessControl.RegistryRights * System.Security.AccessControl.InheritanceFlags * System.Security.AccessControl.PropagationFlags * System.Security.AccessControl.AuditFlags -> System.Security.AccessControl.RegistryAuditRule
Public Sub New (identity As IdentityReference, registryRights As RegistryRights, inheritanceFlags As InheritanceFlags, propagationFlags As PropagationFlags, flags As AuditFlags)

Параметры

identity
IdentityReference

Пользователь или группа, к которым относится данное правило. Должен обладать типом SecurityIdentifier или таким типом, как NTAccount, чтобы его можно было преобразовать в тип SecurityIdentifier.

registryRights
RegistryRights

Побитовое сочетание значений RegistryRights, определяющее подлежащие аудиту права доступа.

inheritanceFlags
InheritanceFlags

Побитовое сочетание значений InheritanceFlags, которое определяет, должно ли правило аудита применяться к подразделам текущего раздела.

propagationFlags
PropagationFlags

Побитовое сочетание значений PropagationFlags, влияющее на способ распространения наследования правила аудита на подразделы текущего раздела.

flags
AuditFlags

Побитовое сочетание значений AuditFlags, определяющее предмет аудита — успешные попытки доступа, неудачные попытки доступа или все попытки доступа.

Исключения

Параметр eventRights содержит недопустимое значение.

-или- Параметр flags содержит недопустимое значение.

-или- Параметр inheritanceFlags содержит недопустимое значение.

-или- Параметр propagationFlags содержит недопустимое значение.

identity имеет значение null.

-или- registryRights равен нулю.

Параметр identity не относится к типу SecurityIdentifier и к такому типу, как NTAccount, который можно преобразовать в тип SecurityIdentifier.

Комментарии

Все разделы реестра являются контейнерами, поэтому единственным флагом наследования, значимым для разделов реестра, является InheritanceFlags.ContainerInherit флаг. Если этот флаг не указан, флаги распространения игнорируются, и затрагивается только непосредственный ключ. Если флаг присутствует, правило распространяется, как показано в следующей таблице. В таблице предполагается, что существует подраздел S с дочерним подразделом CS и подразделом grandchild GS. То есть путь к подразделу grandchild — S\CS\GS.

Флаги распространения S CS GS
None X X X
NoPropagateInherit X X
InheritOnly X X
NoPropagateInherit, InheritOnly X

Шаблон для подраздела grandchild управляет всеми подразделами, содержащимися подразделом внука.

Например, если ContainerInherit флаг указан inheritanceFlags и InheritOnly для флага распространения указан propagationFlags, это правило не применяется к немедленному подразделу, но применяется ко всем его непосредственным дочерним подразделам и ко всем вложенным ключам, которые они содержат.

Примечание

Несмотря на InheritanceFlags.ObjectInherit то, что inheritanceFlagsфлаг можно указать, нет смысла делать это. Для управления доступом пары "имя-значение" в подразделе не являются отдельными объектами. Права доступа к парам "имя-значение" управляются правами подраздела. Кроме того, так как все подразделы являются контейнерами (т. е. они могут содержать другие подразделы), они не затрагиваются флагом ObjectInherit . Наконец, указание флага ObjectInherit без необходимости усложняет обслуживание правил, поскольку это мешает нормальному сочетанию совместимых правил.

Применяется к

RegistryAuditRule(String, RegistryRights, InheritanceFlags, PropagationFlags, AuditFlags)

Инициализирует новый экземпляр класса RegistryAuditRule с указанием имени пользователя или группы для аудита, прав для аудита, необходимости учитывать наследование, и подлежащих аудиту операций (успешных попыток доступа, неудачных попыток доступа или всех попыток доступа).

public:
 RegistryAuditRule(System::String ^ identity, System::Security::AccessControl::RegistryRights registryRights, System::Security::AccessControl::InheritanceFlags inheritanceFlags, System::Security::AccessControl::PropagationFlags propagationFlags, System::Security::AccessControl::AuditFlags flags);
public RegistryAuditRule (string identity, System.Security.AccessControl.RegistryRights registryRights, System.Security.AccessControl.InheritanceFlags inheritanceFlags, System.Security.AccessControl.PropagationFlags propagationFlags, System.Security.AccessControl.AuditFlags flags);
new System.Security.AccessControl.RegistryAuditRule : string * System.Security.AccessControl.RegistryRights * System.Security.AccessControl.InheritanceFlags * System.Security.AccessControl.PropagationFlags * System.Security.AccessControl.AuditFlags -> System.Security.AccessControl.RegistryAuditRule
Public Sub New (identity As String, registryRights As RegistryRights, inheritanceFlags As InheritanceFlags, propagationFlags As PropagationFlags, flags As AuditFlags)

Параметры

identity
String

Имя пользователя или группы, к которым относится данное правило.

registryRights
RegistryRights

Побитовое сочетание значений RegistryRights, определяющее подлежащие аудиту права доступа.

inheritanceFlags
InheritanceFlags

Побитовое сочетание флагов InheritanceFlags, которое определяет, должно ли правило аудита применяться к подразделам текущего раздела.

propagationFlags
PropagationFlags

Побитовое сочетание флагов PropagationFlags, влияющее на способ распространения наследования правила аудита на подразделы текущего раздела.

flags
AuditFlags

Побитовое сочетание значений AuditFlags, определяющее предмет аудита — успешные попытки доступа, неудачные попытки доступа или все попытки доступа.

Исключения

Параметр eventRights содержит недопустимое значение.

-или- Параметр flags содержит недопустимое значение.

-или- Параметр inheritanceFlags содержит недопустимое значение.

-или- Параметр propagationFlags содержит недопустимое значение.

registryRights равен нулю.

identity имеет значение null.

-или- identity представляет собой строку нулевой длины.

-или- Длина значения параметра identity превышает 512 символов.

Комментарии

Все разделы реестра являются контейнерами, поэтому единственным флагом наследования, значимым для разделов реестра, является InheritanceFlags.ContainerInherit флаг. Если этот флаг не указан, флаги распространения игнорируются, и затрагивается только непосредственный ключ. Если флаг присутствует, правило распространяется, как показано в следующей таблице. В таблице предполагается, что существует подраздел S с дочерним подразделом CS и подразделом grandchild GS. То есть путь к подразделу grandchild — S\CS\GS.

Флаги распространения S CS GS
None X X X
NoPropagateInherit X X
InheritOnly X X
NoPropagateInherit, InheritOnly X

Шаблон для подраздела grandchild управляет всеми подразделами, содержащимися подразделом внука.

Например, если ContainerInherit флаг указан inheritanceFlags и InheritOnly для флага распространения указан propagationFlags, это правило не применяется к немедленному подразделу, но применяется ко всем его непосредственным дочерним подразделам и ко всем вложенным ключам, которые они содержат.

Примечание

Несмотря на InheritanceFlags.ObjectInherit то, что inheritanceFlagsфлаг можно указать, нет смысла делать это. Для управления доступом пары "имя-значение" в подразделе не являются отдельными объектами. Права доступа к парам "имя-значение" управляются правами подраздела. Кроме того, так как все подразделы являются контейнерами (т. е. они могут содержать другие подразделы), они не затрагиваются флагом ObjectInherit . Наконец, указание флага ObjectInherit без необходимости усложняет обслуживание правил, поскольку это мешает нормальному сочетанию совместимых правил.

Этот конструктор эквивалентен созданию NTAccount объекта, передаче identity конструктору NTAccount.NTAccount(String) и передаче вновь созданного NTAccount объекта конструктору RegistryAuditRule(IdentityReference, RegistryRights, InheritanceFlags, PropagationFlags, AuditFlags) .

Применяется к