5.3 lcs.audit.key.created

  • Event type: lcs.audit.key.created
  • Defined in: lcs.evman
  • Tier: essential
  • Gating: a matching SACL audit ACE on the parent key, for KEY_CREATE_SUB_KEY
  • Cardinality: once per key created

The record that a registry key was created. Creating a key checks only KEY_CREATE_SUB_KEY on its parent, so the parent's SACL decides, by the rule lcs.audit.key.opened applies to an open: a success audit ACE on the parent that matches the caller. No handle exists yet to carry an alarm mask.

Only a key that was made is recorded. A create that found the key already there and opened it instead writes nothing here; it is an open, and lcs.audit.key.opened records it if the key's own SACL asks. The record is written once the key exists, so a create whose handle then fails to reach the caller is still recorded, because the key was still made. A transacted create is recorded when staged.

5.3.1 Fields #

FieldTypePresenceMeaning
subject.token.sidbin.sidvia callerThe user SID of the effective token the operation ran under.
subject.token.integrityuint.integrityvia callerThe integrity RID of the effective token.
subject.token.iduint.luidvia callerThe token's own LUID, identifying this specific token rather than the logon session it belongs to.
subject.token.auth-iduint.luidvia callerThe LUID of the logon session the effective token belongs to.
subject.token.typestr.enumvia callerWhether the effective token is a primary token or an impersonation token.
subject.token.impersonationuint.enumvia callerThe impersonation level of the effective token.
object.kindstr.enumrequiredAlways key.
object.key.guidbin.guidrequiredThe new key.
object.key.pathstrrequiredThe new key's full path.
object.key.layer.namestroptionalThe layer the key was created in.
object.key.createdboolrequiredAlways true.
object.key.volatileboolrequiredWhether a registry key is volatile, meaning it lives only in memory and does not survive a reboot.
object.key.volatile-requestedboolrequiredEqual to object.key.volatile, since only a key that was made is recorded.
object.key.symlinkboolrequiredWhether a registry key is a symbolic link to another key.
object.sd.lengthuint.bytesrequiredThe new key's descriptor, as built from the parent's inheritable ACEs and the caller's token.
object.sd.ownerbin.sidoptionalThe owner SID on the object's security descriptor.
access.requesteduint.maskrequiredAlways KEY_CREATE_SUB_KEY, the right checked on the parent.
access.granteduint.maskrequiredWhat the parent check granted.
transaction.iduintoptionalThe transaction the operation belonged to, registry or package.
outcome.successboolrequiredAlways true.

Every record also carries the header fields of the envelope, which no payload repeats.

Generated from lcs.evman by pkm/tools/gen-events-book.py. Edit the fragment, not this page.

Edit this page