3.12 kacs.mount.policy.changed

  • Event type: kacs.mount.policy.changed
  • Defined in: kacs.evman
  • Tier: essential
  • Gating: none — every change a caller admitted by the volume-management gate makes is recorded
  • Cardinality: once per change

The record that a filesystem's KACS mount policy was set: what happens to an object on it that has no stored descriptor. unmanaged turns access control off for the whole filesystem; deny-missing refuses such objects; the two synthesize policies build a descriptor from the parent and the template the caller supplies.

Setting a policy needs SeManageVolumePrivilege or SeTcbPrivilege. Every other refusal comes before that check, so a record is always of a change made.

The record does not carry the template. A synthesising policy's template descriptor decides what every unlabelled object on the filesystem grants; read it back with kacs_get_mount_policy.

3.12.1 Fields #

FieldTypePresenceMeaning
subject.token.sidbin.sidvia subjectThe user SID of the effective token the operation ran under.
subject.token.groupsbin.sid[]via subjectThe group SIDs carried by the effective token.
subject.token.group-attributesuint.flags[]via subjectPer-group attribute bitmasks, positionally parallel to subject.token.groups.
subject.token.integrityuint.integrityvia subjectThe integrity RID of the effective token.
subject.token.iduint.luidvia subjectThe token's own LUID, identifying this specific token rather than the logon session it belongs to.
subject.token.auth-iduint.luidvia subjectThe LUID of the logon session the effective token belongs to.
subject.token.typestr.enumvia subjectWhether the effective token is a primary token or an impersonation token.
subject.token.impersonationuint.enumvia subjectThe impersonation level of the effective token.
subject.token.uiduintvia subjectThe Linux UID this token projects onto, for correlating a Peios event with Linux-side audit data.
emitter.process.piduintvia subjectThe process ID the record was written from.
emitter.process.namestrvia subjectThe kernel's name for the emitting process, typically the executable's basename.
emitter.process.executablestr.pathvia subjectThe path the emitting process was executed from, resolved at exec with symbolic links already followed.
subject.pip.typeuint.enumvia subjectThe Protected Isolated Process type in force for the access check.
subject.pip.trustuintvia subjectThe PIP trust level in force for the access check.
object.mount.fs-typestroptionalThe filesystem's type, when the kernel knows it.
object.mount.policystr.enumrequiredThe KACS mount policy in force, which decides what happens to an object with no stored descriptor.
object.mount.policy-previousstr.enumrequiredThe mount policy a change replaced, beside object.mount.policy, the one it put in force.
object.mount.policy-generationuintrequiredThe generation the change began. Every descriptor cached under an older one is discarded on its next use.
outcome.successboolrequiredAlways true: every refusal is decided before anything changes.

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

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

Edit this page