5.12 lcs.audit.value.deleted

  • Event type: lcs.audit.value.deleted
  • Defined in: lcs.evman
  • Tier: essential
  • Gating: KEY_SET_VALUE overlaps the alarm mask cached on the key handle
  • Cardinality: once per delete through a handle whose mask covers it

The record that a registry value was deleted through a key handle, or that an attempt to delete one failed. Gated, staged and fixed at open exactly as lcs.audit.value.set is.

What was removed is recorded by type, length and SHA-256 digest: the effective value before the delete, read in the transaction's own view when the delete is transacted.

5.12.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 registry key an operation acted on.
object.key.pathstrrequiredThe resolved absolute path of the registry key, in canonical form, such as Machine\System\KMES.
object.key.layer.namestroptionalThe layer whose entry was deleted. Absent only when the request failed before its layer was read.
object.key.value.namestroptionalAbsent only when the request failed before its name was read.
object.key.value.type-previousuint.enumoptionalAbsent when no value was found to delete.
object.key.value.length-previousuint.bytesoptionalPresent with object.key.value.type-previous.
object.key.value.digest-previousbinoptionalPresent with object.key.value.type-previous.
access.requesteduint.maskrequiredAlways KEY_SET_VALUE.
access.granteduint.maskrequiredThe access mask in force.
access.matcheduint.maskrequiredThe subset of the requested access that overlapped an audit mask and therefore caused the record to exist.
access.audit-maskuint.maskrequiredThe full continuous-audit mask cached on a handle, of which access.matched is the part this operation touched.
transaction.iduintoptionalThe transaction the operation belonged to, registry or package.
request.timed-outboolwhen outcome.success == falseWhether a request's wait for the source's reply ran out before the reply arrived.
outcome.successboolrequiredWhether the operation succeeded.
outcome.errnoint.errnowhen outcome.success == falseThe error the operation failed with, as a negative errno.

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