Dictionary
179 terms across Peios subsystems.
A
A single rule within an ACL. Contains a type, flags, an access mask, and a trustee SID, with optional extensions for GUIDs (object ACEs) or conditional expressions (callback ACEs).
An ordered list of ACEs in a standard binary format. Two kinds: DACL (controls access) and SACL (controls audit, integrity labels, resource attributes, and policy references).
A 32-bit bitmask representing requested or granted access rights. Divided into four regions: object-specific (bits 0–15), standard (bits 16–20), special (bits 24–25), and generic (bits 28–31).
The complete authorization evaluation function. Takes a token, a security descriptor, and a desired access mask. Evaluates a pipeline of layers (privileges, MIC, PIP, DACL, restricted tokens, confinement, CAAP) and returns the granted rights or denial.
A callout box in documentation content. GitHub-style blockquote syntax for NOTE, WARNING, IMPORTANT, TIP, and CAUTION types.
Start-time checks with the same format as Conditions, but failure causes the service to enter Failed state rather than Skipped.
Authentication daemon — the principal router responsible for authentication (Kerberos/NTLM), token creation, credential management, and CAAP cache population. Design deliberately undecided until KACS + registry are real.
B
A process mitigation locking hardware shadow stack (Intel CET) so the process cannot disable it. Blocks return-oriented programming (ROP) attacks.
The kernel-reserved implicit layer (named 'base') at precedence 0. Cannot be deleted, disabled, or have its precedence changed. The default target for writes that do not specify a layer.
Cryptographic signing of executable files with Ed25519 to establish PIP trust level. Signatures are stored in an ELF .peios.sig section or a security.peios.sig xattr. The kernel verifies; it never signs.
Runtime coupling. If any bound service stops (for any reason), this service is stopped. Stronger than Requires — Requires only affects startup, BindsTo affects the entire lifetime.
A per-layer marker on a key that masks all values from lower-precedence layers for that key. Required for registry.pol **DelVals semantics. Values written in the same or higher-precedence layer override the blanket.
Internal per-CPU kernel buffers that capture events during early boot, before ring buffers are created. Not visible to consumers. Contents are copied into ring buffers when they become available.
C
A file-based project tracker for solo developers. Stores tasks as TOML files on disk, provides a CLI for automation, and serves a milestone-centric web board. Written in Go.
A SID (S-1-15-3-*) representing a declared access capability for confined applications. Used in the confinement pass of AccessCheck.
A centrally-defined collection of access and audit rules, referenced by objects via SYSTEM_SCOPED_POLICY_ID_ACE in the SACL. CAAP can only further restrict access (AND semantics), never expand it.
A name-value pair carried on a token (user claims or device claims) and used in conditional ACE evaluation. Set by authd at token creation time.
An ACE with an appended boolean expression that must evaluate to TRUE for the rule to take effect. Enables attribute-based access control (ABAC). Uses three-valued logic: TRUE, FALSE, UNKNOWN.
Start-time checks (path exists, file exists, directory exists, registry key exists). If any condition fails, the service is skipped (not failed). A skipped service satisfies dependents.
A default-deny sandbox on a token. When a token has a confinement SID, AccessCheck independently evaluates the DACL against only the confinement SID and capability SIDs, then intersects with the normal result. Privileges do not bypass confinement.
A SID (S-1-15-2-*) identifying a confined application. When set on a token, enables the default-deny confinement sandbox.
Mutual exclusion between services. Starting a service stops any conflicting services. The conflict relationship is bidirectional.
A userspace process that maps KMES ring buffers and reads events. Typically dedicates one thread per CPU buffer. eventd is the primary consumer.
The Unix socket through which administrators and tools send commands (start, stop, restart, reload, shutdown) to peinit. Every command is authorized via AccessCheck against the target service's ServiceSecurity SD.
The well-known SID S-1-3-1. A placeholder in inheritable ACEs that is replaced with the creating principal's primary group SID during SD inheritance.
The well-known SID S-1-3-0. A placeholder in inheritable ACEs that is replaced with the creating principal's user SID during SD inheritance.
The one-way mapping of token identity onto Linux credentials (UID/GID). Computed by authd at token creation, stored on the token. Enables unmodified Linux applications to function. Not a security mechanism.
A kernel-level alias, not a real hive. Paths beginning with CurrentUser\ are rewritten to Users\<caller SID>\<remainder> before routing. Not applied to symlink targets (prevents confused deputy attacks).
D
The mechanism that gives every Peios process Linux capabilities (CAP_DAC_OVERRIDE, etc.) to bypass UID/GID/mode-bit checks, ensuring KACS LSM hooks always fire and are the sole access authority.
The unnamed value on a key (empty string as its name). For symlink keys, the default value with type REG_LINK provides the symlink target.
An ACE that explicitly denies specified rights to a trustee SID. In canonical ordering, explicit deny ACEs come before explicit allow ACEs, ensuring denials take precedence.
A group on a token with SE_GROUP_USE_FOR_DENY_ONLY set. Matches deny ACEs but not allow ACEs. Set permanently by FilterToken; cannot be reverted.
A built-in Trail feature that defines terms with definitions, abbreviations, aliases, and references. Terms are auto-linked in page content and browsable at /dictionary/.
The ACL within an SD that defines who is allowed or denied access. The owner controls the DACL via WRITE_DAC. A null DACL grants all access; an empty DACL denies all access.
An Active Directory domain — a logical grouping of machines and users sharing a common security database and trust relationships.
The comparison relationship used by MIC and PIP. A caller dominates an object when their level is greater than or equal to the object's label. Dominant callers face no mandatory restrictions from that mechanism.
E
The token used for access control decisions on a thread — the impersonation token if one is installed, otherwise the primary token.
The value visible to callers after layer resolution — the highest-precedence, highest-sequence entry for a (key GUID, value name) pair that is not a tombstone.
The mechanism for switching from a filtered (Limited) token to its linked elevated (Full) token. KACS stores the pair; authd decides when elevation is permitted.
A per-service policy for irrecoverable failure. Normal (default): service remains in Failed state. Critical: peinit syncs filesystems and reboots the system.
An indivisible record consisting of a header (packed binary metadata) and a payload (msgpack-encoded structured data). Header and payload are always produced and consumed together.
The packed binary prefix of every event. Contains: event size, header size, wall clock timestamp, per-CPU sequence number, CPU identifier, origin class, three identity GUIDs (effective token, true token, process), and a length-prefixed event type string. All fields before the event type string are at fixed offsets.
The msgpack-encoded body of an event. Structure defined by the emitting subsystem or process. KMES treats payloads as opaque — it buffers and delivers without interpreting.
An arbitrary, length-prefixed UTF-8 string in the event header identifying the kind of event. KMES imposes no structure or naming convention — schema and naming are consumer concerns.
Event daemon — drains kernel audit events (from the PKM ring buffer) to SQLite for persistent storage and observability.
F
A per-service mechanism for storing file descriptors across service restarts. The service sends fds to peinit via sd_notify with FDSTORE=1. Restored to the service on the next start.
The KACS subsystem that replaces Linux DAC with SD-based evaluation on files. Enforces the handle model: AccessCheck at open time, granted mask cached on the file descriptor.
The principle governing the DACL walk: once a bit in the access mask has been decided (granted or denied), no later ACE can change that bit's outcome.
A cached VM snapshot taken after boot and setup. Tests resume from a fixture instead of cold-booting, dramatically reducing test execution time.
The Unicode Simple Case Folded form of a key name, value name, or child name. Stored alongside the canonical (case-preserving) name for case-insensitive lookups.
A process mitigation locking hardware indirect-branch tracking (Intel IBT, ARM BTI) so the process cannot disable it. Blocks forward-edge code reuse attacks.
G
Abstract access rights (GENERIC_READ, GENERIC_WRITE, GENERIC_EXECUTE, GENERIC_ALL) mapped to object-specific rights via the object type's GenericMapping before evaluation.
A per-object-type table that translates the four generic rights to specific combinations of object-specific and standard rights.
The C binary injected into QEMU VMs by Provium. Listens on vsock for commands from the host, executes syscalls, ioctls, and shell commands, and returns results.
A 128-bit identifier assigned by the kernel at key creation time and persisted by the source. A key's GUID is its immutable identity — never reused. Paths are the user-facing interface; GUIDs are the internal identity.
H
The enforcement pattern where AccessCheck runs once at open time, the granted access mask is cached on the file descriptor, and subsequent operations check the cached mask. Authority is on the handle, not the holder.
A command run periodically to verify a service is functioning. Exit 0 = healthy. Consecutive failures (HealthCheckRetries) trigger the service's restart or failure policy.
A top-level registry namespace — the first path component in every registry path. Each hive is an independent tree of keys and values, backed by exactly one source. Examples: Machine, Users.
A SQLite database file backing one hive. Each hive registered by loregd has its own database file. The file path is provided on the command line.
I
The impersonation check that determines whether a server may impersonate a specific client's identity. Passes if same user + same restriction status, or if SeImpersonatePrivilege is held. Failure caps to Identification level.
A mechanism allowing a server thread to temporarily assume a client's identity for access control decisions. The server's PSB is unaffected. Controlled by impersonation level and two gates (identity gate and integrity ceiling).
Controls how far a token's identity can travel. Four levels from least to most permissive: Anonymous (no identity), Identification (inspect only), Impersonation (act locally), Delegation (act remotely via Kerberos).
A temporary, per-thread token that overrides the primary token for access control decisions. Only affects the thread that installed it.
The impersonation check that prevents a server from assuming a higher integrity level than its own. Always enforced — SeImpersonatePrivilege does not bypass it. Failure caps to Identification level.
A vertical trust classification on tokens and objects. Five standard levels forming a strict total order: Untrusted (0) < Low (4096) < Medium (8192) < High (12288) < System (16384). Arbitrary numeric values are also valid.
A privilege (SeBackupPrivilege, SeRestorePrivilege) that is only evaluated when the caller explicitly passes the corresponding intent flag. Prevents broad-category privileges from applying to every AccessCheck.
A number on the token identifying which interactive user environment a process belongs to. 0 for services (no interactive environment), 1+ for interactive/remote user environments. Metadata only — no kernel security mechanism evaluates it. Future use: multi-user isolation, desktop namespace routing.
J
The subsystem for submitting and managing supervised jobs. Out of scope for v0.20.
A single supervised process execution. Every time peinit forks a process — starting a service, running a hook, executing a health check — the execution is a job with a GUID, lifecycle tracking, and log correlation.
K
The PKM subsystem that implements tokens, security descriptors, AccessCheck, privileges, impersonation, PIP, and file access control (FACS). The sole identity-based authorization engine for managed objects.
A node in the registry hierarchy. Keys are containers holding subkeys (forming a tree) and values (holding data). Each key has a GUID (identity), a security descriptor, and metadata. Analogous to filesystem directories.
The registry-specific access rights on key SDs: KEY_QUERY_VALUE, KEY_SET_VALUE, KEY_CREATE_SUB_KEY, KEY_ENUMERATE_SUB_KEYS, KEY_NOTIFY, KEY_CREATE_LINK, and KEY_ALL_ACCESS.
A path entry with target HIDDEN that masks a key from lower-precedence layers, making it invisible. The path-level equivalent of a value tombstone. Removing the hiding layer causes the lower-precedence key to reappear.
The PKM subsystem providing the sole event emission path in Peios. Buffers events, stamps them with trusted metadata, assigns per-CPU sequence numbers, and delivers via shared memory ring buffers.
L
A named, precedence-ordered collection of registry writes. Every write is tagged with a layer. Reads resolve across layers: the highest-precedence entry wins. Removing a layer removes its entries and lower-precedence values surface automatically.
The algorithm that determines the effective state of a path entry or value from multiple per-layer entries. Highest precedence wins; within the same precedence, highest sequence number wins.
The PKM subsystem that implements the kernel-mediated hierarchical registry with layers, watches, and transactions.
A process mitigation requiring all shared libraries to be cryptographically signed before they can be loaded (mmap with PROT_EXEC). For PIP-protected processes, libraries must be signed at or above the process's trust level.
A pair of tokens for the same principal — one elevated (Full) and one filtered (Limited) — associated at the logon session level. The filtered token is the session default; the elevated token exists for elevation requests.
The kernel framework that KACS builds on. Provides hook points throughout the kernel where security modules interpose access control decisions.
A per-authentication-event SID (S-1-5-5-X-Y) generated at session creation and injected into the token's groups. Ties the token to its logon session.
A kernel object identified by a LUID representing a single authentication event. Contains LogonSession ID, logon type, user SID, and authentication package. Tokens reference their LogonSession by auth_id. Created by kacs_create_logon_session, invalidated by kacs_invalidate_logon_session.
Local Registry Daemon — a specific SQLite-backed RSI implementation. Currently the only implementation used as registryd, but the two terms are not synonymous.
Local Principal Store — the userspace daemon providing the local user/group directory backed by SQLite.
A 64-bit value unique within a single boot session. Used to identify tokens (token_id), logon sessions (auth_id), and privilege positions.
M
A mandatory access constraint evaluated before the DACL. Blocks write access (and optionally read/execute) when the caller's integrity level is below the object's mandatory label. Does not constrain privilege-granted rights.
A SYSTEM_MANDATORY_LABEL_ACE in the SACL that defines an object's integrity level for MIC. The SID encodes the level (S-1-16-X); the mask encodes which operations are blocked for non-dominant callers.
An ordered release target in Cairn. The web board organises tasks into columns by milestone. Tasks without a milestone appear in a Backlog column.
A synthetic Oneshot service generated by peinit from mount entries in Machine\System\Boot\Mounts\. Named mount:<mountpoint>. Participates in the dependency graph like any real service.
O
An ACE scoped to a specific property or object class via one or two GUIDs (ObjectType and InheritedObjectType). Used for per-property access control on objects with internal structure.
The category of a protected resource (file, registry key, token, process, etc.). Each object type defines its own GenericMapping and object-specific access rights.
A run-to-completion task. Readiness is 'successful exit' (exit code 0 or SuccessExitCodes match). With RemainAfterExit, stays in Completed state to satisfy dependents.
A first-class object representing a requested state machine action on a service (start, stop, restart, reload, reset). Operations provide conflict resolution for concurrent commands and observable lifecycle tracking via GUIDs.
A header field identifying which subsystem or emission path produced the event: a specific kernel subsystem (KMES, KACS, LCS) or userspace (via syscall).
A key GUID with no path entries in any layer. Existing fds continue to work (alive but unnamed). When the last fd closes, LCS tells the source to drop the GUID. Follows the Linux unlink model.
The principal who owns a securable object, identified by the owner SID in the SD. The owner implicitly receives READ_CONTROL and WRITE_DAC unless an Owner Rights ACE suppresses this default.
The well-known SID S-1-3-4. When present in a DACL, suppresses the owner's implicit READ_CONTROL and WRITE_DAC grants, replacing them with whatever the ACE explicitly allows or denies.
P
A layer-qualified naming record mapping (parent GUID, child name, layer) to a target GUID or HIDDEN. Separates naming (which is layered) from identity (which is not). Analogous to overlay filesystem directory entries.
An ordered sequence of pages that guides readers through a topic. Pathways replace the sidebar with their own page list and add prev/next navigation. Defined in .toml files in the pathways/ directory.
Peios init — the PID 1 process responsible for service lifecycle management, boot sequencing, and supervised process execution
The operating system. A Linux-based OS that implements Windows-derived security primitives (SIDs, tokens, SDs, AccessCheck) natively in the kernel to provide coherent, SD-everywhere identity and access control.
The hardcoded bootstrap phase. peinit remounts root read-write, mounts virtual filesystems, starts registryd, and performs infrastructure setup. No registry access occurs during Phase 1.
The registry-driven boot phase. With registryd running, peinit reads service definitions from the registry and starts all boot-triggered services in dependency order.
A file descriptor referring to a specific process, obtained atomically at fork time via clone3(CLONE_PIDFD). Eliminates PID reuse races. peinit tracks every managed process via a pidfd.
The second axis of PIP's 2D trust model, representing trust tier within a PIP type. Higher values dominate lower. Examples: Authenticode (1024), AntiMalware (1536), App (2048), Peios (4096), PeiosTcb (8192).
The first axis of PIP's 2D trust model. Standard values: None (0), Protected (512), Isolated (1024). Encoded as the first sub-authority in a process trust label SID.
The single loadable kernel module containing all Peios kernel extensions.
A layer's override order. Higher precedence wins during layer resolution. Precedence 0 is the default (base and role layers). Precedence > 0 requires SeTcbPrivilege to create or elevate (prevents unprivileged Group Policy injection).
The token that defines a process's baseline identity. Inherited by child processes on fork. Stored via real_cred. Unaffected by impersonation.
Any entity — user, group, service, or machine — that can be identified by a SID. Principals exist in a directory; tokens are runtime snapshots of principal identity.
A hive registered with RSI_HIVE_PRIVATE and a scope GUID. Only accessible to threads whose credentials carry the matching scope GUID. Can shadow global hives for complete registry isolation.
A disabled layer attached to a specific thread's credentials. Globally invisible during normal resolution but included when resolving on behalf of that thread. Enables per-session overrides, testing, and sandboxing.
A system-wide right carried on a token that gates specific operations. Standalone privileges gate system operations; AccessCheck-influencing privileges can cause AccessCheck to grant rights the DACL would not.
A 2D trust model (type × trust level) that protects objects and processes from access by insufficiently trusted processes. Unlike MIC, PIP actively revokes privilege-granted rights. No privilege can bypass PIP.
One-way security flags on the PSB (LSV, WXP, TLP, CFIF, CFIB, PIE, SML) that restrict process behaviour. Set by the process launcher; once set, cannot be cleared. Distinct from PIP, which is determined by binary signature.
The security descriptor on a process that controls who can signal it, inspect its memory, query its token, and perform other operations. Replaces Linux's UID-based process access control.
A per-process security structure carrying PIP identity, process mitigations, and process restrictions. Determined by the loaded binary, not the running principal. Never affected by impersonation.
A SYSTEM_PROCESS_TRUST_LABEL_ACE in the SACL that defines an object's PIP trust level. The SID encodes both the PIP type axis and trust axis (S-1-19-{type}-{trust}).
A top-level content scope in a multi-product Trail site. Each product has its own categories, pathways, and content hierarchy. A single site can host documentation for multiple products.
A KVM test harness for Linux kernel modules and system-level code. Tests are written in Lua and run against real QEMU/KVM virtual machines. Written in Go (host) and C (guest agent).
R
A SQLite connection used for read-only RSI operations. Multiple read connections may be open concurrently (WAL mode).
How peinit determines a Simple service is ready. Notify (default): service sends READY=1 via sd_notify. Alive: process existence is sufficient. Ignored for Oneshot services.
The hardcoded fallback CAAP applied when a scoped policy ACE references a policy SID not in the kernel cache. Grants GENERIC_ALL to Administrators, SYSTEM, and OWNER_RIGHTS. Prevents missing CAAP from locking out administrators.
The user-facing configuration system provided by LCS and its sources working together. Use 'LCS' for the kernel subsystem and the source name (e.g. loregd) for the userspace component. 'The Registry' covers the whole thing.
The binary protocol and contract between LCS and its backing stores. Defines the operations LCS can request, the response format, and the error model. Any process implementing the RSI can back a hive — LCS is source-agnostic.
The primary registry source that peinit starts during Phase 1 boot. A named slot, not an implementation — registryd is whatever RSI source provides the Machine and Users hives. Currently loregd fills this slot.
The last sub-authority in a SID — the portion that distinguishes individual principals within a domain.
A hard dependency. All required services must be satisfied before this service starts. If any required service fails, this service fails.
A name-value pair stored as a SYSTEM_RESOURCE_ATTRIBUTE_ACE in the SACL. Provides per-object metadata for conditional ACE evaluation. Does not grant or deny access directly.
Controls whether and when peinit restarts a failed service. Never (no restarts), OnFailure (restart on abnormal exit, the default), Always (restart on any exit).
A token carrying a secondary SID list (restricting SIDs). AccessCheck evaluates the DACL twice — once with normal SIDs, once with restricting SIDs — and grants only the intersection.
A per-CPU shared memory region managed by KMES and mapped into authorized consumers' address spaces. Each buffer has a producer metadata page, a consumer metadata page, and a double-virtual-mapped data region. The sole delivery mechanism from KMES to userspace.
S
The eager, creation-time propagation of inheritable ACEs from a parent object's SD to a newly created child's SD. Controlled by ACE flags (OI, CI, NP, IO) and the SD's PROTECTED flags.
A datagram-based readiness and health signalling protocol. Services send structured messages (READY=1, WATCHDOG=1, etc.) to peinit via a Unix datagram socket. Sender authentication uses kernel-attested PID matching.
Any object that has a security descriptor — files, registry keys, IPC endpoints, tokens, processes, and logon sessions.
In LCS context, a registry key. Values inherit their key's access control — there is no per-value SD.
The complete security policy for a protected object. Contains an owner SID, a group SID, a DACL, and optionally a SACL. Every protected object has exactly one SD.
A variable-length binary value that uniquely identifies a principal. Format: S-1-{authority}-{sub1}-...-{subN}. Binary-compatible with Windows SIDs.
The mechanism by which LCS reads its own operational parameters from Machine\System\Registry\, using compiled-in defaults at boot and hot-swapping to registry values when a source registers.
The SD binary encoding where all data (owner, group, DACL, SACL) is packed into a contiguous byte buffer with offsets instead of pointers. The only format KACS uses for storage and wire transmission.
LCS's internal watch on Machine\System\Registry\ that drives self-configuration. Layer table updates, configuration hot-swap, and layer metadata changes are all triggered by self-watch events.
A monotonic counter value assigned by LCS to every mutation. Provides deterministic tiebreaking within a precedence tier. The global sequence counter is never decremented or reset.
A named, supervised unit of execution managed by peinit. Has a definition (registry schema), a runtime state (state machine), and a security policy (ServiceSecurity SD). Two types: Simple (long-running daemon) and Oneshot (run-to-completion task).
A per-service identity SID derived from the SHA-1 hash of the service name (S-1-5-80-{hash}). Enables per-service access control independent of the account the service runs under.
One of nine states every service is in at any given time: Inactive, Starting, Active, Reloading, Stopping, Completed, Failed, Abandoned, or Skipped.
The security descriptor on a service controlling who may manage it via the control interface. Stored as REG_BINARY in the service's registry definition. Makes services securable objects.
A SID paired with a 32-bit attributes field controlling how the SID participates in access evaluation (mandatory, enabled, deny-only, etc.).
A long-running daemon. The process IS the service. Readiness is determined by sd_notify (Notify) or process existence (Alive). The default service type.
A userspace process that implements the RSI for one or more hives. Sources handle storage (reads, writes, enumeration, transactions). They do not make access control decisions, see caller identity, or manage watches. loregd is the first source.
A CAAP testing mechanism where each rule may carry staged DACLs/SACLs alongside effective ones. Both are evaluated in parallel; differences are logged. Staged results do not affect access.
The set of metadata fields in the event header populated by KMES at emission time: timestamp, sequence number, cpu_id, origin class (KMES-intrinsic), and effective token GUID, true token GUID, process GUID (identity, captured from KACS). Trusted because only the kernel writes them.
Access rights common to all object types: DELETE, READ_CONTROL, WRITE_DAC, WRITE_OWNER, and SYNCHRONIZE (bits 16–20 of the access mask).
A confinement mode where ALL_APPLICATION_PACKAGES is omitted from capabilities, resulting in a much narrower access surface. Only objects explicitly granting to ALL_RESTRICTED_APPLICATION_PACKAGES or to specific capabilities are accessible.
A task scoped within a parent task. Addressed as parent_id/subtask_id (e.g. 12/1). Same schema as global tasks but exists as decomposition of the parent's work.
A watch that observes changes not only on the watched key but on all its descendants. Events include path components identifying the depth and location of the change.
A key that redirects path resolution to another registry path. The symlink flag is set at creation (immutable). The target is the default value with type REG_LINK — which is itself layered, so higher-precedence layers can redirect a symlink.
The ACL within an SD that carries system-level policy: audit ACEs, mandatory integrity labels, resource attributes, scoped policy references, and process trust labels. Modification requires ACCESS_SYSTEM_SECURITY.
T
A unit of work in Cairn, stored as a directory containing a meta.toml file. Has an integer ID, a status (todo, active, done), and optional metadata (product, priority, milestone, dependencies).
A kernel object representing a thread's identity and security policy. Contains a user SID, group SIDs, privileges, integrity level, impersonation level, claims, and confinement settings. Every thread must have a token.
A layer entry with type REG_TOMBSTONE that masks a specific value from lower-precedence layers. Callers see 'value not found'. Required for registry.pol **Del.ValueName semantics.
A static site generator purpose-built for documentation. Single Go binary, zero dependencies. Produces fast, searchable sites with pathway navigation, dark mode, and multi-product support.
A hive-scoped atomic multi-key write scope. Either all operations commit together or none do. Bound to a specific hive on first mutation. Lifetime is tied to the transaction fd.
The set of components whose correct behaviour is necessary for system security. In Peios: the Linux kernel, PKM, and core trusted userspace daemons (peinit, authd, loregd).
A process mitigation restricting shared library loading to approved directory prefixes. Weaker than LSV (trusts the path, not the binary). Prefixes are stored in a machine-wide kernel cache.
The SID that an ACE targets — the principal to whom the ACE's access rule applies.
V
A named, typed datum stored within a key. Each value has a name (string), a type (REG_SZ, REG_DWORD, etc.), and data. A key can hold multiple values. One unnamed value per key is the default value.
The type tag on a registry value. LCS supports the Windows registry type set: REG_SZ, REG_EXPAND_SZ, REG_BINARY, REG_DWORD, REG_QWORD, REG_MULTI_SZ, REG_LINK, REG_NONE, REG_DWORD_BIG_ENDIAN. REG_TOMBSTONE is internal only.
A key stored in non-persistent storage only, lost on reboot or hive unload. Set at creation, immutable. Children of volatile keys must also be volatile.
A SQLite in-memory database (:memory:) ATTACHed to a hive database connection. Volatile keys are stored here. Lost when loregd exits.
The host-guest communication channel used by Provium. No IP stack or network configuration required. Provides a direct socket connection between the host binary and the guest agent.
W
A soft dependency. Wanted services are started before this service if they exist. Failure of a wanted service does not prevent this service from starting.
A persistent subscription for changes on a key fd. Armed via ioctl, pollable via epoll. Events are structured records read from the fd. Watches report effective state changes (post-layer-resolution), not layer mechanics.
A structured record describing a specific change: VALUE_SET, VALUE_DELETED, SUBKEY_CREATED, SUBKEY_DELETED, SD_CHANGED, KEY_DELETED, or OVERFLOW. Events reflect effective state changes only.
A keepalive mechanism where a service must send WATCHDOG=1 via sd_notify within WatchdogTimeout seconds. Missing the deadline is treated as a service failure.
A SID with a fixed value and well-defined meaning that the implementation must recognise. Examples: Everyone (S-1-1-0), SYSTEM (S-1-5-18), Anonymous (S-1-5-7).
A forked instance of the guest agent inside a VM, providing an independent process with its own credentials and command channel. Used for testing multi-process scenarios.
A SQLite connection used for mutating RSI operations. Only one write connection exists per hive database. All writes are serialised through this connection.
A restricted token variant where the restricting SID intersection applies only to write-category bits. Read and execute access comes from the normal pass alone.
A process mitigation preventing memory pages from being simultaneously writable and executable. W+X mappings and transitions between writable and executable states are rejected.
Access Control
The registry-specific access rights on key SDs: KEY_QUERY_VALUE, KEY_SET_VALUE, KEY_CREATE_SUB_KEY, KEY_ENUMERATE_SUB_KEYS, KEY_NOTIFY, KEY_CREATE_LINK, and KEY_ALL_ACCESS.
AccessCheck
The complete authorization evaluation function. Takes a token, a security descriptor, and a desired access mask. Evaluates a pipeline of layers (privileges, MIC, PIP, DACL, restricted tokens, confinement, CAAP) and returns the granted rights or denial.
The comparison relationship used by MIC and PIP. A caller dominates an object when their level is greater than or equal to the object's label. Dominant callers face no mandatory restrictions from that mechanism.
The principle governing the DACL walk: once a bit in the access mask has been decided (granted or denied), no later ACE can change that bit's outcome.
The enforcement pattern where AccessCheck runs once at open time, the granted access mask is cached on the file descriptor, and subsequent operations check the cached mask. Authority is on the handle, not the holder.
A privilege (SeBackupPrivilege, SeRestorePrivilege) that is only evaluated when the caller explicitly passes the corresponding intent flag. Prevents broad-category privileges from applying to every AccessCheck.
A system-wide right carried on a token that gates specific operations. Standalone privileges gate system operations; AccessCheck-influencing privileges can cause AccessCheck to grant rights the DACL would not.
Architecture
The C binary injected into QEMU VMs by Provium. Listens on vsock for commands from the host, executes syscalls, ioctls, and shell commands, and returns results.
The host-guest communication channel used by Provium. No IP stack or network configuration required. Provides a direct socket connection between the host binary and the guest agent.
Binary Signing
Cryptographic signing of executable files with Ed25519 to establish PIP trust level. Signatures are stored in an ELF .peios.sig section or a security.peios.sig xattr. The kernel verifies; it never signs.
Boot
A synthetic Oneshot service generated by peinit from mount entries in Machine\System\Boot\Mounts\. Named mount:<mountpoint>. Participates in the dependency graph like any real service.
The hardcoded bootstrap phase. peinit remounts root read-write, mounts virtual filesystems, starts registryd, and performs infrastructure setup. No registry access occurs during Phase 1.
The registry-driven boot phase. With registryd running, peinit reads service definitions from the registry and starts all boot-triggered services in dependency order.
Bootstrap
The mechanism by which LCS reads its own operational parameters from Machine\System\Registry\, using compiled-in defaults at boot and hot-swapping to registry values when a source registers.
Central Access Policy
A centrally-defined collection of access and audit rules, referenced by objects via SYSTEM_SCOPED_POLICY_ID_ACE in the SACL. CAAP can only further restrict access (AND semantics), never expand it.
The hardcoded fallback CAAP applied when a scoped policy ACE references a policy SID not in the kernel cache. Grants GENERIC_ALL to Administrators, SYSTEM, and OWNER_RIGHTS. Prevents missing CAAP from locking out administrators.
A CAAP testing mechanism where each rule may carry staged DACLs/SACLs alongside effective ones. Both are evaluated in parallel; differences are logged. Staged results do not affect access.
Concurrency
A SQLite connection used for read-only RSI operations. Multiple read connections may be open concurrently (WAL mode).
A SQLite connection used for mutating RSI operations. Only one write connection exists per hive database. All writes are serialised through this connection.
Configuration
A top-level content scope in a multi-product Trail site. Each product has its own categories, pathways, and content hierarchy. A single site can host documentation for multiple products.
Confinement
A default-deny sandbox on a token. When a token has a confinement SID, AccessCheck independently evaluates the DACL against only the confinement SID and capability SIDs, then intersects with the normal result. Privileges do not bypass confinement.
A confinement mode where ALL_APPLICATION_PACKAGES is omitted from capabilities, resulting in a much narrower access surface. Only objects explicitly granting to ALL_RESTRICTED_APPLICATION_PACKAGES or to specific capabilities are accessible.
Content
A callout box in documentation content. GitHub-style blockquote syntax for NOTE, WARNING, IMPORTANT, TIP, and CAUTION types.
An ordered sequence of pages that guides readers through a topic. Pathways replace the sidebar with their own page list and add prev/next navigation. Defined in .toml files in the pathways/ directory.
Daemons
Authentication daemon — the principal router responsible for authentication (Kerberos/NTLM), token creation, credential management, and CAAP cache population. Design deliberately undecided until KACS + registry are real.
Event daemon — drains kernel audit events (from the PKM ring buffer) to SQLite for persistent storage and observability.
Local Registry Daemon — a specific SQLite-backed RSI implementation. Currently the only implementation used as registryd, but the two terms are not synonymous.
Local Principal Store — the userspace daemon providing the local user/group directory backed by SQLite.
Peios init — the PID 1 process responsible for service lifecycle management, boot sequencing, and supervised process execution
The primary registry source that peinit starts during Phase 1 boot. A named slot, not an implementation — registryd is whatever RSI source provides the Machine and Users hives. Currently loregd fills this slot.
Data Model
The unnamed value on a key (empty string as its name). For symlink keys, the default value with type REG_LINK provides the symlink target.
A 128-bit identifier assigned by the kernel at key creation time and persisted by the source. A key's GUID is its immutable identity — never reused. Paths are the user-facing interface; GUIDs are the internal identity.
A top-level registry namespace — the first path component in every registry path. Each hive is an independent tree of keys and values, backed by exactly one source. Examples: Machine, Users.
A node in the registry hierarchy. Keys are containers holding subkeys (forming a tree) and values (holding data). Each key has a GUID (identity), a security descriptor, and metadata. Analogous to filesystem directories.
An ordered release target in Cairn. The web board organises tasks into columns by milestone. Tasks without a milestone appear in a Backlog column.
A layer-qualified naming record mapping (parent GUID, child name, layer) to a target GUID or HIDDEN. Separates naming (which is layered) from identity (which is not). Analogous to overlay filesystem directory entries.
The user-facing configuration system provided by LCS and its sources working together. Use 'LCS' for the kernel subsystem and the source name (e.g. loregd) for the userspace component. 'The Registry' covers the whole thing.
In LCS context, a registry key. Values inherit their key's access control — there is no per-value SD.
A task scoped within a parent task. Addressed as parent_id/subtask_id (e.g. 12/1). Same schema as global tasks but exists as decomposition of the parent's work.
A unit of work in Cairn, stored as a directory containing a meta.toml file. Has an integer ID, a status (todo, active, done), and optional metadata (product, priority, milestone, dependencies).
A named, typed datum stored within a key. Each value has a name (string), a type (REG_SZ, REG_DWORD, etc.), and data. A key can hold multiple values. One unnamed value per key is the default value.
The type tag on a registry value. LCS supports the Windows registry type set: REG_SZ, REG_EXPAND_SZ, REG_BINARY, REG_DWORD, REG_QWORD, REG_MULTI_SZ, REG_LINK, REG_NONE, REG_DWORD_BIG_ENDIAN. REG_TOMBSTONE is internal only.
Delivery
Internal per-CPU kernel buffers that capture events during early boot, before ring buffers are created. Not visible to consumers. Contents are copied into ring buffers when they become available.
A userspace process that maps KMES ring buffers and reads events. Typically dedicates one thread per CPU buffer. eventd is the primary consumer.
A per-CPU shared memory region managed by KMES and mapped into authorized consumers' address spaces. Each buffer has a producer metadata page, a consumer metadata page, and a double-virtual-mapped data region. The sole delivery mechanism from KMES to userspace.
Dependencies
Runtime coupling. If any bound service stops (for any reason), this service is stopped. Stronger than Requires — Requires only affects startup, BindsTo affects the entire lifetime.
Mutual exclusion between services. Starting a service stops any conflicting services. The conflict relationship is bidirectional.
A hard dependency. All required services must be satisfied before this service starts. If any required service fails, this service fails.
A soft dependency. Wanted services are started before this service if they exist. Failure of a wanted service does not prevent this service from starting.
Domain
An Active Directory domain — a logical grouping of machines and users sharing a common security database and trust relationships.
Event Model
An indivisible record consisting of a header (packed binary metadata) and a payload (msgpack-encoded structured data). Header and payload are always produced and consumed together.
The packed binary prefix of every event. Contains: event size, header size, wall clock timestamp, per-CPU sequence number, CPU identifier, origin class, three identity GUIDs (effective token, true token, process), and a length-prefixed event type string. All fields before the event type string are at fixed offsets.
The msgpack-encoded body of an event. Structure defined by the emitting subsystem or process. KMES treats payloads as opaque — it buffers and delivers without interpreting.
An arbitrary, length-prefixed UTF-8 string in the event header identifying the kind of event. KMES imposes no structure or naming convention — schema and naming are consumer concerns.
A header field identifying which subsystem or emission path produced the event: a specific kernel subsystem (KMES, KACS, LCS) or userspace (via syscall).
The set of metadata fields in the event header populated by KMES at emission time: timestamp, sequence number, cpu_id, origin class (KMES-intrinsic), and effective token GUID, true token GUID, process GUID (identity, captured from KACS). Trusted because only the kernel writes them.
FACS
The mechanism that gives every Peios process Linux capabilities (CAP_DAC_OVERRIDE, etc.) to bypass UID/GID/mode-bit checks, ensuring KACS LSM hooks always fire and are the sole access authority.
The KACS subsystem that replaces Linux DAC with SD-based evaluation on files. Enforces the handle model: AccessCheck at open time, granted mask cached on the file descriptor.
Features
A built-in Trail feature that defines terms with definitions, abbreviations, aliases, and references. Terms are auto-linked in page content and browsable at /dictionary/.
General
A file-based project tracker for solo developers. Stores tasks as TOML files on disk, provides a CLI for automation, and serves a milestone-centric web board. Written in Go.
The operating system. A Linux-based OS that implements Windows-derived security primitives (SIDs, tokens, SDs, AccessCheck) natively in the kernel to provide coherent, SD-everywhere identity and access control.
A KVM test harness for Linux kernel modules and system-level code. Tests are written in Lua and run against real QEMU/KVM virtual machines. Written in Go (host) and C (guest agent).
A static site generator purpose-built for documentation. Single Go binary, zero dependencies. Produces fast, searchable sites with pathway navigation, dark mode, and multi-product support.
Hives
A kernel-level alias, not a real hive. Paths beginning with CurrentUser\ are rewritten to Users\<caller SID>\<remainder> before routing. Not applied to symlink targets (prevents confused deputy attacks).
A hive registered with RSI_HIVE_PRIVATE and a scope GUID. Only accessible to threads whose credentials carry the matching scope GUID. Can shadow global hives for complete registry isolation.
Identity
A SID (S-1-15-3-*) representing a declared access capability for confined applications. Used in the confinement pass of AccessCheck.
A SID (S-1-15-2-*) identifying a confined application. When set on a token, enables the default-deny confinement sandbox.
A per-authentication-event SID (S-1-5-5-X-Y) generated at session creation and injected into the token's groups. Ties the token to its logon session.
A 64-bit value unique within a single boot session. Used to identify tokens (token_id), logon sessions (auth_id), and privilege positions.
Any entity — user, group, service, or machine — that can be identified by a SID. Principals exist in a directory; tokens are runtime snapshots of principal identity.
The last sub-authority in a SID — the portion that distinguishes individual principals within a domain.
A variable-length binary value that uniquely identifies a principal. Format: S-1-{authority}-{sub1}-...-{subN}. Binary-compatible with Windows SIDs.
A per-service identity SID derived from the SHA-1 hash of the service name (S-1-5-80-{hash}). Enables per-service access control independent of the account the service runs under.
A SID paired with a 32-bit attributes field controlling how the SID participates in access evaluation (mandatory, enabled, deny-only, etc.).
The SID that an ACE targets — the principal to whom the ACE's access rule applies.
A SID with a fixed value and well-defined meaning that the implementation must recognise. Examples: Everyone (S-1-1-0), SYSTEM (S-1-5-18), Anonymous (S-1-5-7).
Impersonation
The impersonation check that determines whether a server may impersonate a specific client's identity. Passes if same user + same restriction status, or if SeImpersonatePrivilege is held. Failure caps to Identification level.
A mechanism allowing a server thread to temporarily assume a client's identity for access control decisions. The server's PSB is unaffected. Controlled by impersonation level and two gates (identity gate and integrity ceiling).
Controls how far a token's identity can travel. Four levels from least to most permissive: Anonymous (no identity), Identification (inspect only), Impersonation (act locally), Delegation (act remotely via Kerberos).
The impersonation check that prevents a server from assuming a higher integrity level than its own. Always enforced — SeImpersonatePrivilege does not bypass it. Failure caps to Identification level.
Infrastructure
The kernel framework that KACS builds on. Provides hook points throughout the kernel where security modules interpose access control decisions.
The set of components whose correct behaviour is necessary for system security. In Peios: the Linux kernel, PKM, and core trusted userspace daemons (peinit, authd, loregd).
Kernel
The PKM subsystem that implements tokens, security descriptors, AccessCheck, privileges, impersonation, PIP, and file access control (FACS). The sole identity-based authorization engine for managed objects.
The PKM subsystem providing the sole event emission path in Peios. Buffers events, stamps them with trusted metadata, assigns per-CPU sequence numbers, and delivers via shared memory ring buffers.
The PKM subsystem that implements the kernel-mediated hierarchical registry with layers, watches, and transactions.
The single loadable kernel module containing all Peios kernel extensions.
Keys
A key GUID with no path entries in any layer. Existing fds continue to work (alive but unnamed). When the last fd closes, LCS tells the source to drop the GUID. Follows the Linux unlink model.
A key that redirects path resolution to another registry path. The symlink flag is set at creation (immutable). The target is the default value with type REG_LINK — which is itself layered, so higher-precedence layers can redirect a symlink.
A key stored in non-persistent storage only, lost on reboot or hive unload. Set at creation, immutable. Children of volatile keys must also be volatile.
Layers
The kernel-reserved implicit layer (named 'base') at precedence 0. Cannot be deleted, disabled, or have its precedence changed. The default target for writes that do not specify a layer.
The value visible to callers after layer resolution — the highest-precedence, highest-sequence entry for a (key GUID, value name) pair that is not a tombstone.
A named, precedence-ordered collection of registry writes. Every write is tagged with a layer. Reads resolve across layers: the highest-precedence entry wins. Removing a layer removes its entries and lower-precedence values surface automatically.
The algorithm that determines the effective state of a path entry or value from multiple per-layer entries. Highest precedence wins; within the same precedence, highest sequence number wins.
A layer's override order. Higher precedence wins during layer resolution. Precedence 0 is the default (base and role layers). Precedence > 0 requires SeTcbPrivilege to create or elevate (prevents unprivileged Group Policy injection).
A disabled layer attached to a specific thread's credentials. Globally invisible during normal resolution but included when resolving on behalf of that thread. Enables per-session overrides, testing, and sandboxing.
A monotonic counter value assigned by LCS to every mutation. Provides deterministic tiebreaking within a precedence tier. The global sequence counter is never decremented or reset.
Mandatory Access Control
A vertical trust classification on tokens and objects. Five standard levels forming a strict total order: Untrusted (0) < Low (4096) < Medium (8192) < High (12288) < System (16384). Arbitrary numeric values are also valid.
A mandatory access constraint evaluated before the DACL. Blocks write access (and optionally read/execute) when the caller's integrity level is below the object's mandatory label. Does not constrain privilege-granted rights.
The second axis of PIP's 2D trust model, representing trust tier within a PIP type. Higher values dominate lower. Examples: Authenticode (1024), AntiMalware (1536), App (2048), Peios (4096), PeiosTcb (8192).
The first axis of PIP's 2D trust model. Standard values: None (0), Protected (512), Isolated (1024). Encoded as the first sub-authority in a process trust label SID.
A 2D trust model (type × trust level) that protects objects and processes from access by insufficiently trusted processes. Unlike MIC, PIP actively revokes privilege-granted rights. No privilege can bypass PIP.
Process Security
A process mitigation locking hardware shadow stack (Intel CET) so the process cannot disable it. Blocks return-oriented programming (ROP) attacks.
A process mitigation locking hardware indirect-branch tracking (Intel IBT, ARM BTI) so the process cannot disable it. Blocks forward-edge code reuse attacks.
A process mitigation requiring all shared libraries to be cryptographically signed before they can be loaded (mmap with PROT_EXEC). For PIP-protected processes, libraries must be signed at or above the process's trust level.
One-way security flags on the PSB (LSV, WXP, TLP, CFIF, CFIB, PIE, SML) that restrict process behaviour. Set by the process launcher; once set, cannot be cleared. Distinct from PIP, which is determined by binary signature.
The security descriptor on a process that controls who can signal it, inspect its memory, query its token, and perform other operations. Replaces Linux's UID-based process access control.
A per-process security structure carrying PIP identity, process mitigations, and process restrictions. Determined by the loaded binary, not the running principal. Never affected by impersonation.
A process mitigation restricting shared library loading to approved directory prefixes. Weaker than LSV (trusts the path, not the binary). Prefixes are stored in a machine-wide kernel cache.
A process mitigation preventing memory pages from being simultaneously writable and executable. W+X mappings and transitions between writable and executable states are rejected.
RSI
The binary protocol and contract between LCS and its backing stores. Defines the operations LCS can request, the response format, and the error model. Any process implementing the RSI can back a hive — LCS is source-agnostic.
A userspace process that implements the RSI for one or more hives. Sources handle storage (reads, writes, enumeration, transactions). They do not make access control decisions, see caller identity, or manage watches. loregd is the first source.
Runtime
Start-time checks with the same format as Conditions, but failure causes the service to enter Failed state rather than Skipped.
Start-time checks (path exists, file exists, directory exists, registry key exists). If any condition fails, the service is skipped (not failed). A skipped service satisfies dependents.
The Unix socket through which administrators and tools send commands (start, stop, restart, reload, shutdown) to peinit. Every command is authorized via AccessCheck against the target service's ServiceSecurity SD.
A per-service mechanism for storing file descriptors across service restarts. The service sends fds to peinit via sd_notify with FDSTORE=1. Restored to the service on the next start.
A command run periodically to verify a service is functioning. Exit 0 = healthy. Consecutive failures (HealthCheckRetries) trigger the service's restart or failure policy.
A file descriptor referring to a specific process, obtained atomically at fork time via clone3(CLONE_PIDFD). Eliminates PID reuse races. peinit tracks every managed process via a pidfd.
A datagram-based readiness and health signalling protocol. Services send structured messages (READY=1, WATCHDOG=1, etc.) to peinit via a Unix datagram socket. Sender authentication uses kernel-attested PID matching.
A keepalive mechanism where a service must send WATCHDOG=1 via sd_notify within WatchdogTimeout seconds. Missing the deadline is treated as a service failure.
Security Descriptors
A single rule within an ACL. Contains a type, flags, an access mask, and a trustee SID, with optional extensions for GUIDs (object ACEs) or conditional expressions (callback ACEs).
An ordered list of ACEs in a standard binary format. Two kinds: DACL (controls access) and SACL (controls audit, integrity labels, resource attributes, and policy references).
A 32-bit bitmask representing requested or granted access rights. Divided into four regions: object-specific (bits 0–15), standard (bits 16–20), special (bits 24–25), and generic (bits 28–31).
An ACE with an appended boolean expression that must evaluate to TRUE for the rule to take effect. Enables attribute-based access control (ABAC). Uses three-valued logic: TRUE, FALSE, UNKNOWN.
The well-known SID S-1-3-1. A placeholder in inheritable ACEs that is replaced with the creating principal's primary group SID during SD inheritance.
The well-known SID S-1-3-0. A placeholder in inheritable ACEs that is replaced with the creating principal's user SID during SD inheritance.
An ACE that explicitly denies specified rights to a trustee SID. In canonical ordering, explicit deny ACEs come before explicit allow ACEs, ensuring denials take precedence.
The ACL within an SD that defines who is allowed or denied access. The owner controls the DACL via WRITE_DAC. A null DACL grants all access; an empty DACL denies all access.
Abstract access rights (GENERIC_READ, GENERIC_WRITE, GENERIC_EXECUTE, GENERIC_ALL) mapped to object-specific rights via the object type's GenericMapping before evaluation.
A per-object-type table that translates the four generic rights to specific combinations of object-specific and standard rights.
A SYSTEM_MANDATORY_LABEL_ACE in the SACL that defines an object's integrity level for MIC. The SID encodes the level (S-1-16-X); the mask encodes which operations are blocked for non-dominant callers.
An ACE scoped to a specific property or object class via one or two GUIDs (ObjectType and InheritedObjectType). Used for per-property access control on objects with internal structure.
The category of a protected resource (file, registry key, token, process, etc.). Each object type defines its own GenericMapping and object-specific access rights.
The principal who owns a securable object, identified by the owner SID in the SD. The owner implicitly receives READ_CONTROL and WRITE_DAC unless an Owner Rights ACE suppresses this default.
The well-known SID S-1-3-4. When present in a DACL, suppresses the owner's implicit READ_CONTROL and WRITE_DAC grants, replacing them with whatever the ACE explicitly allows or denies.
A SYSTEM_PROCESS_TRUST_LABEL_ACE in the SACL that defines an object's PIP trust level. The SID encodes both the PIP type axis and trust axis (S-1-19-{type}-{trust}).
A name-value pair stored as a SYSTEM_RESOURCE_ATTRIBUTE_ACE in the SACL. Provides per-object metadata for conditional ACE evaluation. Does not grant or deny access directly.
The eager, creation-time propagation of inheritable ACEs from a parent object's SD to a newly created child's SD. Controlled by ACE flags (OI, CI, NP, IO) and the SD's PROTECTED flags.
Any object that has a security descriptor — files, registry keys, IPC endpoints, tokens, processes, and logon sessions.
The complete security policy for a protected object. Contains an owner SID, a group SID, a DACL, and optionally a SACL. Every protected object has exactly one SD.
The SD binary encoding where all data (owner, group, DACL, SACL) is packed into a contiguous byte buffer with offsets instead of pointers. The only format KACS uses for storage and wire transmission.
Access rights common to all object types: DELETE, READ_CONTROL, WRITE_DAC, WRITE_OWNER, and SYNCHRONIZE (bits 16–20 of the access mask).
The ACL within an SD that carries system-level policy: audit ACEs, mandatory integrity labels, resource attributes, scoped policy references, and process trust labels. Modification requires ACCESS_SYSTEM_SECURITY.
Service Model
A single supervised process execution. Every time peinit forks a process — starting a service, running a hook, executing a health check — the execution is a job with a GUID, lifecycle tracking, and log correlation.
A run-to-completion task. Readiness is 'successful exit' (exit code 0 or SuccessExitCodes match). With RemainAfterExit, stays in Completed state to satisfy dependents.
A first-class object representing a requested state machine action on a service (start, stop, restart, reload, reset). Operations provide conflict resolution for concurrent commands and observable lifecycle tracking via GUIDs.
A named, supervised unit of execution managed by peinit. Has a definition (registry schema), a runtime state (state machine), and a security policy (ServiceSecurity SD). Two types: Simple (long-running daemon) and Oneshot (run-to-completion task).
The security descriptor on a service controlling who may manage it via the control interface. Stored as REG_BINARY in the service's registry definition. Makes services securable objects.
A long-running daemon. The process IS the service. Readiness is determined by sd_notify (Notify) or process existence (Alive). The default service type.
State Machine
A per-service policy for irrecoverable failure. Normal (default): service remains in Failed state. Critical: peinit syncs filesystems and reboots the system.
How peinit determines a Simple service is ready. Notify (default): service sends READY=1 via sd_notify. Alive: process existence is sufficient. Ignored for Oneshot services.
Controls whether and when peinit restarts a failed service. Never (no restarts), OnFailure (restart on abnormal exit, the default), Always (restart on any exit).
One of nine states every service is in at any given time: Inactive, Starting, Active, Reloading, Stopping, Completed, Failed, Abandoned, or Skipped.
Storage
The Unicode Simple Case Folded form of a key name, value name, or child name. Stored alongside the canonical (case-preserving) name for case-insensitive lookups.
A SQLite database file backing one hive. Each hive registered by loregd has its own database file. The file path is provided on the command line.
A SQLite in-memory database (:memory:) ATTACHed to a hive database connection. Volatile keys are stored here. Lost when loregd exits.
Subsystems
The subsystem for submitting and managing supervised jobs. Out of scope for v0.20.
Testing
A cached VM snapshot taken after boot and setup. Tests resume from a fixture instead of cold-booting, dramatically reducing test execution time.
A forked instance of the guest agent inside a VM, providing an independent process with its own credentials and command channel. Used for testing multi-process scenarios.
Tokens
A name-value pair carried on a token (user claims or device claims) and used in conditional ACE evaluation. Set by authd at token creation time.
The one-way mapping of token identity onto Linux credentials (UID/GID). Computed by authd at token creation, stored on the token. Enables unmodified Linux applications to function. Not a security mechanism.
A group on a token with SE_GROUP_USE_FOR_DENY_ONLY set. Matches deny ACEs but not allow ACEs. Set permanently by FilterToken; cannot be reverted.
The token used for access control decisions on a thread — the impersonation token if one is installed, otherwise the primary token.
The mechanism for switching from a filtered (Limited) token to its linked elevated (Full) token. KACS stores the pair; authd decides when elevation is permitted.
A temporary, per-thread token that overrides the primary token for access control decisions. Only affects the thread that installed it.
A number on the token identifying which interactive user environment a process belongs to. 0 for services (no interactive environment), 1+ for interactive/remote user environments. Metadata only — no kernel security mechanism evaluates it. Future use: multi-user isolation, desktop namespace routing.
A pair of tokens for the same principal — one elevated (Full) and one filtered (Limited) — associated at the logon session level. The filtered token is the session default; the elevated token exists for elevation requests.
A kernel object identified by a LUID representing a single authentication event. Contains LogonSession ID, logon type, user SID, and authentication package. Tokens reference their LogonSession by auth_id. Created by kacs_create_logon_session, invalidated by kacs_invalidate_logon_session.
The token that defines a process's baseline identity. Inherited by child processes on fork. Stored via real_cred. Unaffected by impersonation.
A token carrying a secondary SID list (restricting SIDs). AccessCheck evaluates the DACL twice — once with normal SIDs, once with restricting SIDs — and grants only the intersection.
A kernel object representing a thread's identity and security policy. Contains a user SID, group SIDs, privileges, integrity level, impersonation level, claims, and confinement settings. Every thread must have a token.
A restricted token variant where the restricting SID intersection applies only to write-category bits. Read and execute access comes from the normal pass alone.
Tombstones
A per-layer marker on a key that masks all values from lower-precedence layers for that key. Required for registry.pol **DelVals semantics. Values written in the same or higher-precedence layer override the blanket.
A path entry with target HIDDEN that masks a key from lower-precedence layers, making it invisible. The path-level equivalent of a value tombstone. Removing the hiding layer causes the lower-precedence key to reappear.
A layer entry with type REG_TOMBSTONE that masks a specific value from lower-precedence layers. Callers see 'value not found'. Required for registry.pol **Del.ValueName semantics.
Transactions
A hive-scoped atomic multi-key write scope. Either all operations commit together or none do. Bound to a specific hive on first mutation. Lifetime is tied to the transaction fd.
Watches
LCS's internal watch on Machine\System\Registry\ that drives self-configuration. Layer table updates, configuration hot-swap, and layer metadata changes are all triggered by self-watch events.
A watch that observes changes not only on the watched key but on all its descendants. Events include path components identifying the depth and location of the change.
A persistent subscription for changes on a key fd. Armed via ioctl, pollable via epoll. Events are structured records read from the fd. Watches report effective state changes (post-layer-resolution), not layer mechanics.
A structured record describing a specific change: VALUE_SET, VALUE_DELETED, SUBKEY_CREATED, SUBKEY_DELETED, SD_CHANGED, KEY_DELETED, or OVERFLOW. Events reflect effective state changes only.
- Section Numbering
- Clause Numbering
- External Reference Conventions
- Terminology
- Conventions
- Compatibility
- AccessCheck Overview
- The Algorithm
- The DACL Walk
- Mandatory Integrity Control
- Object ACEs and Property-Level Access
- Application Confinement
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Set-Security Interface
- setuid Behaviour
- LSM Blob Layouts
- Boot Sequence
- ABI Reference
- SID Format
- Well-Known SIDs
- SD Structure
- Resource Attributes
- Conditional ACE Bytecode Reference
- SD Storage
- ACL Format
- Access Masks
- ACE Types
- ACE Ordering
- SD Inheritance
- Ownership
- Conditional ACEs
- Claim Attribute Format
- Token Structure
- Token Lifecycle
- Token Creation
- Process Protection
- Terminology
- Conventions
- Compatibility
- AccessCheck Overview
- The Algorithm
- The DACL Walk
- Mandatory Integrity Control
- Object ACEs and Property-Level Access
- Application Confinement
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Set-Security Interface
- setuid Behaviour
- LSM Blob Layouts
- Boot Sequence
- ABI Reference
- SID Format
- Well-Known SIDs
- SD Structure
- Resource Attributes
- Conditional ACE Bytecode Reference
- SD Storage
- ACL Format
- Access Masks
- ACE Types
- ACE Ordering
- SD Inheritance
- Ownership
- Conditional ACEs
- Claim Attribute Format
- Token Structure
- Token Lifecycle
- Token Creation
- Process Protection
- Impersonation Lifecycle
- Compatibility
- Access Control
- Terminology
- Access Control Model
- Enforcement
- How Peios Security Works
- Understanding Conditional ACEs
- User Claims, Device Claims, and Resource Attributes
- How Attribute-Based Access Control Works
- Writing Conditional ACE Expressions
- Understanding Central Access Policy
- Working with Central Access Policy
- Understanding Auditing on Peios
- Working with Auditing
- Understanding Process Security
- Working with Process Security
- How Peios Eliminates Root
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- Troubleshooting Common Issues
- Well-Known SIDs Reference
- Understanding Access Control on Peios
- Reading an Object's Security Descriptor
- Setting a DACL on a File or Directory
- Adding Allow and Deny Rules
- Breaking Inheritance on an Object
- Using OWNER RIGHTS to Restrict or Expand Owner Access
- Understanding Why an Access Decision Was Made
- File SDs and Extended Attributes
- How Security Descriptors Work
- AccessCheck Pseudocode
- What Are Access Control Lists (DACLs and SACLs)
- How AccessCheck Evaluates Every Access Decision
- Understanding Access Masks and Rights
- How ACE Ordering Affects Access Decisions
- Null DACL vs Empty DACL
- Understanding Ownership and Owner Rights
- How SD Inheritance Works
- Understanding Mandatory Integrity Control (MIC)
- Setting and Changing Mandatory Labels
- Understanding Process Integrity Protection (PIP)
- How PIP Protects Objects
- Working with PIP Protection
- Understanding Privileges on Peios
- Testing Public Accessibility with Anonymous Impersonation
- Understanding Application Confinement
- Working with Confinement
- Understanding Restricted Tokens
- Creating Restricted Tokens
- Binary Packing
- Terminology
- Metadata
- Section Numbering
- Clause Numbering
- Section Addressing
- Scope
- Terminology
- Compatibility
- Central Access and Auditing Policy
- Use-Time Semantics
- The Set-Security Interface
- ABI Reference
- LSM Hook Matrix
- SD Structure
- SD Storage
- ACL Format
- ACE Types
- Scope
- Terminology
- Compatibility
- Central Access and Auditing Policy
- Use-Time Semantics
- The Set-Security Interface
- ABI Reference
- LSM Hook Matrix
- SD Structure
- SD Storage
- ACL Format
- ACE Types
- SD Inheritance
- Struct Layouts
- Service Identity
- Terminology
- How Peios Security Works
- How Attribute-Based Access Control Works
- Glossary
- Frequently Asked Questions
- What Are Security Identifiers (SIDs)
- How Tokens Work
- Understanding Access Control on Peios
- How Security Descriptors Work
- AccessCheck Pseudocode
- What Are Access Control Lists (DACLs and SACLs)
- Null DACL vs Empty DACL
- Frontmatter Reference
- Binary Packing
- Pseudocode Conventions
- Terminology
- Conventions
- Compatibility
- AccessCheck Overview
- The DACL Walk
- PIP in AccessCheck
- Auditing in AccessCheck
- The Handle Model
- KACS-Native Open
- Syscalls
- Token Ioctls
- ABI Reference
- Access Masks
- ACE Types
- Token Access Rights
- Terminology
- Conventions
- Compatibility
- AccessCheck Overview
- The DACL Walk
- PIP in AccessCheck
- Auditing in AccessCheck
- The Handle Model
- KACS-Native Open
- Syscalls
- Token Ioctls
- ABI Reference
- LSM Hook Matrix
- Access Masks
- ACE Types
- SD Inheritance
- Token Access Rights
- Conventions
- Failure Modes
- Overview
- Layers
- Access Control
- Interface Model
- Ioctls
- Self-Configuration
- Access Control Model
- How Peios Security Works
- Understanding Conditional ACEs
- Understanding Auditing on Peios
- Glossary
- Troubleshooting Common Issues
- Reading an Object's Security Descriptor
- File SDs and Extended Attributes
- The Check-at-Open Model
- File Access Rights Reference
- What Are Access Control Lists (DACLs and SACLs)
- How AccessCheck Evaluates Every Access Decision
- Understanding Access Masks and Rights
- Binary Packing
- Cross-Reference Validation
- Scope
- Terminology
- Compatibility
- AccessCheck Overview
- The Algorithm
- The DACL Walk
- Mandatory Integrity Control
- Restricted Tokens
- Object ACEs and Property-Level Access
- Application Confinement
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Handle Model
- KACS-Native Open
- Legacy Open Compatibility
- Use-Time Semantics
- File SD Storage
- The Set-Security Interface
- Syscalls
- Token Ioctls
- Inspection Interfaces
- ABI Reference
- LSM Hook Matrix
- Kernel Patches
- Build Configuration
- Well-Known SIDs
- SD Structure
- Conditional ACE Bytecode Reference
- SD Storage
- Access Masks
- ACE Types
- ACE Ordering
- Ownership
- Conditional ACEs
- Claim Attribute Format
- Token Overview
- Token Structure
- Token Lifecycle
- Token Creation
- Sessions and Revocation
- Token Access Rights
- Process Security Descriptors
- PSB Lifecycle
- Binary Signing
- Privilege Model
- Privilege Catalog
- Process Protection
- Enforcement Points
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Scope
- Terminology
- Compatibility
- AccessCheck Overview
- The Algorithm
- The DACL Walk
- Mandatory Integrity Control
- Restricted Tokens
- Object ACEs and Property-Level Access
- Application Confinement
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Handle Model
- KACS-Native Open
- Legacy Open Compatibility
- Use-Time Semantics
- File SD Storage
- The Set-Security Interface
- Syscalls
- Token Ioctls
- Inspection Interfaces
- ABI Reference
- LSM Hook Matrix
- Kernel Patches
- Build Configuration
- Well-Known SIDs
- SD Structure
- Conditional ACE Bytecode Reference
- SD Storage
- Access Masks
- ACE Types
- ACE Ordering
- Ownership
- Conditional ACEs
- Claim Attribute Format
- Token Overview
- Token Structure
- Token Lifecycle
- Token Creation
- LogonSessions and Revocation
- Token Access Rights
- Process Security Descriptors
- PSB Lifecycle
- Binary Signing
- Privilege Model
- Privilege Catalog
- Process Protection
- Enforcement Points
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Scope
- Terminology
- Overview
- Access Control
- Interface Model
- Syscalls
- Ioctls
- Error Model
- Operations
- Source Obligations
- Terminology
- Terminology
- Protocol
- Security Model
- Bootstrap
- Service Security
- Startup
- Access Control Model
- Enforcement
- How Peios Security Works
- Understanding Conditional ACEs
- How Attribute-Based Access Control Works
- Understanding Central Access Policy
- Working with Central Access Policy
- Understanding Auditing on Peios
- Understanding Process Security
- Understanding Linux Compatibility
- How Peios Eliminates Root
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- Understanding Access Control on Peios
- Understanding Why an Access Decision Was Made
- File SDs and Extended Attributes
- The Check-at-Open Model
- File Access Rights Reference
- How Security Descriptors Work
- AccessCheck Pseudocode
- What Are Access Control Lists (DACLs and SACLs)
- How AccessCheck Evaluates Every Access Decision
- Understanding Access Masks and Rights
- How ACE Ordering Affects Access Decisions
- Null DACL vs Empty DACL
- Understanding Ownership and Owner Rights
- Understanding Mandatory Integrity Control (MIC)
- Understanding Process Integrity Protection (PIP)
- How PIP Protects Objects
- Understanding Privileges on Peios
- Privilege Reference
- Testing Public Accessibility with Anonymous Impersonation
- Understanding Application Confinement
- Understanding Restricted Tokens
- Scope
- Scope
- Scope
- Terminology
- Compatibility
- Central Access and Auditing Policy
- Credential Projection
- setuid Behaviour
- Token Ioctls
- Boot Sequence
- ABI Reference
- Conditional ACEs
- Token Structure
- Token Lifecycle
- Linked Tokens and Elevation
- Sessions and Revocation
- Binary Signing
- Privilege Model
- Privilege Catalog
- Process Protection
- Impersonation Levels
- Impersonation Lifecycle
- Scope
- Terminology
- Compatibility
- Mandatory Integrity Control
- Central Access and Auditing Policy
- Credential Projection
- setuid Behaviour
- Token Ioctls
- Boot Sequence
- ABI Reference
- Conditional ACEs
- Token Structure
- Token Lifecycle
- Token Creation
- Linked Tokens and Elevation
- LogonSessions and Revocation
- Binary Signing
- Privilege Model
- Privilege Catalog
- Process Protection
- PIP Limitations
- Impersonation Levels
- Impersonation Lifecycle
- Scope
- Scope
- Terminology
- Compatibility
- Protocol
- Service Output Handling
- Security Model
- Bootstrap
- Phase 2
- Overview
- Service Identity
- Pre-Exec Sequence
- Health Checks
- Graph Validation and Execution
- Scope
- Working with Process Security
- How PIP Protects Objects
- How Binary Signing Determines PIP Level
- Working with PIP Protection
- Application Confinement
- Token Ioctls
- Well-Known SIDs
- Token Structure
- Application Confinement
- Token Ioctls
- Well-Known SIDs
- Token Structure
- How Peios Security Works
- Glossary
- Troubleshooting Access Denied Errors
- Well-Known SIDs Reference
- Understanding Application Confinement
- Working with Confinement
- Understanding Restricted Tokens
- Compatibility
- Application Confinement
- The Handle Model
- DAC Neutralization
- Syscalls
- ABI Reference
- Resource Attributes
- Conditional ACE Bytecode Reference
- ACE Types
- Conditional ACEs
- Claim Attribute Format
- Token Overview
- Token Structure
- Token Access Rights
- Compatibility
- Application Confinement
- The Handle Model
- DAC Neutralization
- Syscalls
- ABI Reference
- Resource Attributes
- Conditional ACE Bytecode Reference
- ACE Types
- Conditional ACEs
- Claim Attribute Format
- Token Overview
- Token Structure
- Token Access Rights
- Impersonation Lifecycle
- Hives
- Path Entries
- Access Control Model
- Understanding Conditional ACEs
- User Claims, Device Claims, and Resource Attributes
- How Attribute-Based Access Control Works
- Writing Conditional ACE Expressions
- Understanding Auditing on Peios
- Glossary
- Frequently Asked Questions
- Machine Identity in a Domain
- Understanding Access Control on Peios
- Transferring Ownership of an Object
- AccessCheck Pseudocode
- Understanding Ownership and Owner Rights
- How PIP Protects Objects
- Understanding Privileges on Peios
- Privilege Reference
- External Reference Conventions
- Compatibility
- The Algorithm
- Central Access and Auditing Policy
- ABI Reference
- SD Structure
- Resource Attributes
- Conditional ACE Bytecode Reference
- ACE Types
- Ownership
- Conditional ACEs
- Claim Attribute Format
- Token Structure
- Compatibility
- The Algorithm
- Application Confinement
- Central Access and Auditing Policy
- The Set-Security Interface
- ABI Reference
- SD Structure
- Resource Attributes
- Conditional ACE Bytecode Reference
- ACE Types
- Ownership
- Conditional ACEs
- Claim Attribute Format
- Token Structure
- Access Control Model
- Understanding Conditional ACEs
- User Claims, Device Claims, and Resource Attributes
- How Attribute-Based Access Control Works
- Writing Conditional ACE Expressions
- Glossary
- Frequently Asked Questions
- Troubleshooting Common Issues
- What Are Access Control Lists (DACLs and SACLs)
- Failure Modes
- Failure Modes
- Compatibility
- The Algorithm
- Central Access and Auditing Policy
- Conditional ACEs
- Compatibility
- The Algorithm
- Central Access and Auditing Policy
- Conditional ACEs
- Conventions
- Protocol
- Boot Modes
- Definition Schema
- Configuration Generations
- Pre-Exec Sequence
- States and Transitions
- Graph Validation and Execution
- Batch Writer
- Synthetic Events
- Cross-Type Filtering
- Execution
- Streaming
- Understanding Conditional ACEs
- Impersonating a Client's Identity
- Fixtures
- AccessCheck Overview
- The Algorithm
- The DACL Walk
- Application Confinement
- Central Access and Auditing Policy
- Auditing in AccessCheck
- Token Ioctls
- ABI Reference
- SID Format
- Well-Known SIDs
- Conditional ACEs
- Token Overview
- Token Structure
- Privilege Model
- AccessCheck Overview
- The Algorithm
- The DACL Walk
- Application Confinement
- Central Access and Auditing Policy
- Auditing in AccessCheck
- Token Ioctls
- ABI Reference
- SID Format
- Well-Known SIDs
- Conditional ACEs
- Token Overview
- Token Structure
- Privilege Model
- Access Control Model
- How Peios Security Works
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- Well-Known SIDs Reference
- AccessCheck Pseudocode
- How AccessCheck Evaluates Every Access Decision
- Understanding Application Confinement
- Working with Confinement
- Understanding Restricted Tokens
- The Algorithm
- Application Confinement
- Token Ioctls
- ABI Reference
- Well-Known SIDs
- Token Structure
- The Algorithm
- Application Confinement
- Token Ioctls
- ABI Reference
- Well-Known SIDs
- Token Structure
- Troubleshooting Access Denied Errors
- Well-Known SIDs Reference
- Understanding Application Confinement
- Working with Confinement
- Understanding Restricted Tokens
- Clause Numbering
- Comparison
- Scope
- Terminology
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Failure Modes
- Constants
- Recommended Implementation Optimisations
- Scope
- Terminology
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Failure Modes
- Constants
- Recommended Implementation Optimisations
- Linked Tokens and Elevation
- SD Inheritance
- Linked Tokens and Elevation
- Compatibility
- Struct Layouts
- Watch Model
- Ad-Hoc Jobs
- Terminology
- Shutdown
- Overview
- Gap Detection
- Streaming
- Clause Numbering
- The DACL Walk
- Object ACEs and Property-Level Access
- ABI Reference
- SID Format
- ACE Ordering
- Ownership
- Conditional ACEs
- Token Structure
- Token Creation
- The DACL Walk
- Object ACEs and Property-Level Access
- ABI Reference
- SID Format
- ACE Ordering
- Ownership
- Conditional ACEs
- Token Structure
- Token Creation
- How Peios Security Works
- Understanding Conditional ACEs
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- Setting a DACL on a File or Directory
- Adding Allow and Deny Rules
- Understanding Why an Access Decision Was Made
- How Security Descriptors Work
- What Are Access Control Lists (DACLs and SACLs)
- How AccessCheck Evaluates Every Access Decision
- How ACE Ordering Affects Access Decisions
- Null DACL vs Empty DACL
- Understanding Restricted Tokens
- Creating Restricted Tokens
- Terminology
- AccessCheck Overview
- The Algorithm
- The DACL Walk
- Mandatory Integrity Control
- Restricted Tokens
- Application Confinement
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Handle Model
- KACS-Native Open
- File SD Storage
- The Set-Security Interface
- Syscalls
- Token Ioctls
- Boot Sequence
- ABI Reference
- Well-Known SIDs
- SD Structure
- Resource Attributes
- ACL Format
- Access Masks
- ACE Types
- ACE Ordering
- SD Inheritance
- Ownership
- Token Structure
- Token Lifecycle
- Token Creation
- Token Adjustment
- Token Access Rights
- Process Security Descriptors
- PSB Lifecycle
- Privilege Model
- Privilege Catalog
- Process Protection
- Terminology
- AccessCheck Overview
- The Algorithm
- The DACL Walk
- Mandatory Integrity Control
- Restricted Tokens
- Application Confinement
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Handle Model
- KACS-Native Open
- File SD Storage
- The Set-Security Interface
- Syscalls
- Token Ioctls
- Boot Sequence
- ABI Reference
- LSM Hook Matrix
- Well-Known SIDs
- SD Structure
- Resource Attributes
- ACL Format
- Access Masks
- ACE Types
- ACE Ordering
- SD Inheritance
- Ownership
- Token Structure
- Token Lifecycle
- Token Creation
- Token Adjustment
- Token Access Rights
- Process Security Descriptors
- PSB Lifecycle
- Privilege Model
- Privilege Catalog
- Process Protection
- Terminology
- Access Control
- Ioctls
- Terminology
- How Peios Security Works
- Understanding Conditional ACEs
- User Claims, Device Claims, and Resource Attributes
- How Attribute-Based Access Control Works
- Writing Conditional ACE Expressions
- Understanding Central Access Policy
- Working with Central Access Policy
- Understanding Auditing on Peios
- Working with Auditing
- Understanding Process Security
- Working with Process Security
- How Peios Eliminates Root
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- Troubleshooting Common Issues
- How Tokens Work
- Understanding Access Control on Peios
- Reading an Object's Security Descriptor
- Setting a DACL on a File or Directory
- Adding Allow and Deny Rules
- Breaking Inheritance on an Object
- Transferring Ownership of an Object
- Using OWNER RIGHTS to Restrict or Expand Owner Access
- Understanding Why an Access Decision Was Made
- File SDs and Extended Attributes
- The Check-at-Open Model
- File Access Rights Reference
- How Security Descriptors Work
- AccessCheck Pseudocode
- What Are Access Control Lists (DACLs and SACLs)
- How AccessCheck Evaluates Every Access Decision
- Understanding Access Masks and Rights
- How ACE Ordering Affects Access Decisions
- Null DACL vs Empty DACL
- Understanding Ownership and Owner Rights
- How SD Inheritance Works
- Understanding Mandatory Integrity Control (MIC)
- Integrity Levels Explained
- Understanding Process Integrity Protection (PIP)
- How PIP Protects Objects
- How Binary Signing Determines PIP Level
- Working with PIP Protection
- Understanding Privileges on Peios
- Privilege Reference
- Testing Public Accessibility with Anonymous Impersonation
- Understanding Application Confinement
- Working with Confinement
- Understanding Restricted Tokens
- Creating Restricted Tokens
- Dictionary Integration
- External Reference Conventions
- Self-Configuration
- Self-Configuration
- Conventions
- Compatibility
- Central Access and Auditing Policy
- Boot Sequence
- ABI Reference
- SID Format
- Well-Known SIDs
- Privilege Catalog
- Conventions
- Compatibility
- Central Access and Auditing Policy
- Boot Sequence
- ABI Reference
- SID Format
- Well-Known SIDs
- Privilege Catalog
- Compatibility
- Configuration Reference
- Self-Configuration
- Service Identity
- Overview
- Transport
- Transport
- Transport
- Understanding Conditional ACEs
- User Claims, Device Claims, and Resource Attributes
- Writing Conditional ACE Expressions
- Understanding Central Access Policy
- Working with Central Access Policy
- Troubleshooting Common Issues
- Inspecting a Thread's Impersonation State
- Querying Token Information (SIDs, Groups, Privileges)
- Working with Elevation
- Well-Known SIDs Reference
- What Are Security Identifiers (SIDs)
- Machine Identity in a Domain
- Inspecting a Process's Identity
- Reading an Object's Security Descriptor
- Setting a DACL on a File or Directory
- Adding Allow and Deny Rules
- Breaking Inheritance on an Object
- Transferring Ownership of an Object
- Using OWNER RIGHTS to Restrict or Expand Owner Access
- Understanding Why an Access Decision Was Made
- What Are Access Control Lists (DACLs and SACLs)
- How AccessCheck Evaluates Every Access Decision
- Understanding Access Masks and Rights
- How ACE Ordering Affects Access Decisions
- Privilege Reference
- Impersonation Levels Explained
- Creating Restricted Tokens
- Multi-Product Mode
- SEO
- Workers
- PIP in AccessCheck
- Syscalls
- Inspection Interfaces
- LSM Hook Matrix
- Well-Known SIDs
- Process Protection
- Enforcement Points
- PIP in AccessCheck
- Syscalls
- Inspection Interfaces
- LSM Hook Matrix
- Well-Known SIDs
- Ownership
- Process Protection
- Enforcement Points
- Understanding Process Security
- Working with Process Security
- How Peios Eliminates Root
- Understanding Process Integrity Protection (PIP)
- How PIP Protects Objects
- Working with PIP Protection
- Privilege Reference
- Syscall Interface
- Scope
- Terminology
- Event Model
- Syscall Interface
- Credential Projection
- setuid Behaviour
- Syscalls
- Token Ioctls
- Inspection Interfaces
- ABI Reference
- LSM Hook Matrix
- Kernel Patches
- SD Storage
- Token Overview
- Token Access Rights
- PSB Overview
- PSB Lifecycle
- PIP Limitations
- Impersonation Gates
- Impersonation Lifecycle
- Credential Projection
- setuid Behaviour
- Syscalls
- Token Ioctls
- Inspection Interfaces
- ABI Reference
- LSM Hook Matrix
- Kernel Patches
- SD Storage
- SD Inheritance
- Token Overview
- Token Access Rights
- PSB Overview
- PSB Lifecycle
- PIP Limitations
- Impersonation Gates
- Impersonation Lifecycle
- Terminology
- Access Control
- Terminology
- Protocol
- Service Identity
- Constants
- KMES Consumption
- Schema
- Token Structure
- Token Lifecycle
- Linked Tokens and Elevation
- Token Access Rights
- Token Structure
- Token Lifecycle
- Linked Tokens and Elevation
- Token Access Rights
- Process Security Descriptors
- Error Model
- How Peios Eliminates Root
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- Working with Elevation
- How Linked Tokens and Elevation Work
- Integrity Levels Explained
- Changelog Format
- External Reference Conventions
- Scope
- Terminology
- Conventions
- Compatibility
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Failure Modes
- Constants
- Recommended Implementation Optimisations
- Scope
- Terminology
- Conventions
- Compatibility
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Failure Modes
- Constants
- Recommended Implementation Optimisations
- Scope
- Terminology
- The Algorithm
- Auditing in AccessCheck
- File SD Storage
- The Set-Security Interface
- Syscalls
- ABI Reference
- Well-Known SIDs
- ACE Types
- ACE Ordering
- Conditional ACEs
- Token Structure
- Sessions and Revocation
- Privilege Model
- Privilege Catalog
- Scope
- Terminology
- The Algorithm
- Auditing in AccessCheck
- KACS-Native Open
- File SD Storage
- The Set-Security Interface
- Syscalls
- ABI Reference
- Well-Known SIDs
- ACE Types
- ACE Ordering
- Conditional ACEs
- Token Structure
- LogonSessions and Revocation
- Privilege Model
- Privilege Catalog
- Scope
- Terminology
- Compatibility
- Failure Modes
- Constants
- Struct Layouts
- Configuration Reference
- Overview
- Layers
- Access Control
- Watch Model
- Watch Dispatch
- Transaction Semantics
- Interface Model
- Ioctls
- Source Obligations
- Self-Configuration
- Scope
- Terminology
- Compatibility
- Shutdown
- Service Output Handling
- Bootstrap
- Overview
- Configuration Generations
- Health Checks
- Graph Validation and Execution
- Job Model
- Ad-Hoc Jobs
- Operation Model
- Conflict Resolution
- Scope
- Terminology
- Prior Art
- Startup
- Shutdown
- Failure Modes
- Configuration Keys
- Constants
- Overview
- KMES Consumption
- Storage Sharding
- Batch Writer
- Gap Detection
- Synthetic Events
- Schema
- Database Lifecycle
- Adaptive Indexing
- Retention
- Boot Partitioning
- Overview
- Transport
- Log Writer
- Schema
- Database Lifecycle
- Retention
- Overview
- Schema
- Retention
- Adaptive Rollups
- Overview
- Event Queries
- Log Queries
- Metric Queries
- Cross-Type Filtering
- Execution
- Streaming
- Transport
- Access Control Model
- Enforcement
- How Peios Security Works
- Understanding Auditing on Peios
- Working with Auditing
- Glossary
- Frequently Asked Questions
- Troubleshooting Common Issues
- How Tokens Work
- Understanding Logon Sessions
- Understanding Access Control on Peios
- The Check-at-Open Model
- How Security Descriptors Work
- AccessCheck Pseudocode
- What Are Access Control Lists (DACLs and SACLs)
- Privilege Reference
- What Is Trail
- Dev Server
- Running Commands
- What Is Cairn
- Web Board Overview
- Version Numbers
- Scope
- Terminology
- Conventions
- Compatibility
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Constants
- Recommended Implementation Optimisations
- Scope
- Terminology
- Conventions
- Compatibility
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Constants
- Recommended Implementation Optimisations
- Compatibility
- ABI Reference
- SD Structure
- SD Storage
- ACL Format
- ACE Types
- SD Inheritance
- Claim Attribute Format
- Binary Signing
- Compatibility
- ABI Reference
- SD Structure
- SD Storage
- ACL Format
- ACE Types
- SD Inheritance
- Claim Attribute Format
- Binary Signing
- Constants
- RSI Wire Format
- Protocol
- Backup Format
- Concurrency Model
- Request Handling
- Scope
- Terminology
- Constants
- KMES Consumption
- Gap Detection
- Schema
- Adaptive Indexing
- Overview
- Event Queries
- Execution
- Access Control Model
- trail.toml Reference
- Navigation and Theming
- Built-in Templates
- Binary Packing
- Wire Protocol
- Web Board Overview
- External Reference Conventions
- Scope
- Terminology
- Conventions
- Compatibility
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Failure Modes
- Constants
- Recommended Implementation Optimisations
- Scope
- Terminology
- Conventions
- Compatibility
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Failure Modes
- Constants
- Recommended Implementation Optimisations
- ABI Reference
- Claim Attribute Format
- ABI Reference
- Claim Attribute Format
- RSI Wire Format
- Configuration Reference
- Values
- Protocol
- Backup Format
- Database Schema
- Terminology
- Conventions
- Constants
- KMES Consumption
- Gap Detection
- Schema
- Adaptive Indexing
- Schema
- Overview
- Event Queries
- Execution
- Transport
- Access Control Model
- Enforcement
- Wire Protocol
- Frequently Asked Questions
- Scope
- Terminology
- Conventions
- Compatibility
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Constants
- Scope
- Terminology
- Conventions
- Compatibility
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Constants
- Constants
- Struct Layouts
- Watch Model
- Watch Dispatch
- Ioctls
- Self-Configuration
- Scope
- Terminology
- Prior Art
- Constants
- Synthetic Events
- Schema
- Overview
- Event Queries
- Cross-Type Filtering
- Transport
- Access Control Model
- Enforcement
- Working with Auditing
- PSD Numbers
- Scope
- Terminology
- Compatibility
- Ring Buffer
- Failure Modes
- Recommended Implementation Optimisations
- Scope
- Terminology
- Compatibility
- Ring Buffer
- Failure Modes
- Recommended Implementation Optimisations
- Auditing in AccessCheck
- Syscalls
- Binary Signing
- Auditing in AccessCheck
- Syscalls
- Binary Signing
- Scope
- Scope
- Terminology
- Compatibility
- Protocol
- Service Output Handling
- Security Model
- Bootstrap
- Phase 2
- Health Checks
- Transition Causes
- Graph Validation and Execution
- Job Model
- Ad-Hoc Jobs
- Operation Model
- Scope
- Terminology
- Prior Art
- Startup
- Shutdown
- Failure Modes
- Configuration Keys
- Constants
- Overview
- KMES Consumption
- Storage Sharding
- Batch Writer
- Gap Detection
- Synthetic Events
- Schema
- Database Lifecycle
- Adaptive Indexing
- Retention
- Boot Partitioning
- Overview
- Transport
- Log Writer
- Schema
- Database Lifecycle
- Overview
- Transport
- Schema
- Database Lifecycle
- Adaptive Rollups
- Overview
- Event Queries
- Execution
- Streaming
- Transport
- Access Control Model
- Enforcement
- Understanding Auditing on Peios
- Working with Auditing
- Troubleshooting Common Issues
- Working with PIP Protection
- Scope
- Terminology
- Auditing in AccessCheck
- The Handle Model
- Legacy Open Compatibility
- Use-Time Semantics
- File SD Storage
- DAC Neutralization
- Syscalls
- LSM Hook Matrix
- Kernel Patches
- Token Lifecycle
- Binary Signing
- Privilege Catalog
- Enforcement Points
- Scope
- Terminology
- Auditing in AccessCheck
- The Handle Model
- Legacy Open Compatibility
- Use-Time Semantics
- File SD Storage
- DAC Neutralization
- Syscalls
- LSM Hook Matrix
- Kernel Patches
- Token Lifecycle
- Binary Signing
- Privilege Catalog
- Enforcement Points
- Scope
- Compatibility
- Security Model
- Glossary
- Terminology
- Compatibility
- The Algorithm
- The DACL Walk
- Restricted Tokens
- Central Access and Auditing Policy
- Auditing in AccessCheck
- Syscalls
- ABI Reference
- Access Masks
- SD Inheritance
- Token Access Rights
- Process Security Descriptors
- Terminology
- Compatibility
- The Algorithm
- The DACL Walk
- Mandatory Integrity Control
- Restricted Tokens
- Central Access and Auditing Policy
- Auditing in AccessCheck
- Syscalls
- ABI Reference
- LSM Hook Matrix
- Access Masks
- SD Inheritance
- Token Access Rights
- Process Security Descriptors
- Constants
- Access Control Model
- AccessCheck Pseudocode
- Understanding Access Masks and Rights
- Conventions
- Pseudocode Conventions
- Section Addressing
- Scope
- Terminology
- Prior Art
- Binary Format
- String Format
- Comparison
- Generation
- Scope
- Terminology
- Conventions
- Event Model
- Emission API
- Syscall Interface
- Constants
- Recommended Implementation Optimisations
- Terminology
- Compatibility
- The Algorithm
- Object ACEs and Property-Level Access
- ABI Reference
- ACE Types
- ACE Ordering
- Terminology
- Compatibility
- The Algorithm
- Object ACEs and Property-Level Access
- ABI Reference
- ACE Types
- ACE Ordering
- SD Inheritance
- Terminology
- Compatibility
- Failure Modes
- Constants
- Struct Layouts
- RSI Wire Format
- Configuration Reference
- Overview
- Hives
- Keys
- Path Entries
- Values
- Layers
- Layer Resolution
- Deletion
- Access Control
- Watch Dispatch
- Interface Model
- Syscalls
- Ioctls
- Protocol
- Operations
- Source Obligations
- Bootstrap Sequence
- Self-Configuration
- Backup Format
- Scope
- Terminology
- Command Line and Startup
- Database Schema
- Concurrency Model
- Request Handling
- Terminology
- Compatibility
- Command Set
- Service Output Handling
- Job Model
- Ad-Hoc Jobs
- Operation Model
- Conflict Resolution
- Terminology
- Constants
- Gap Detection
- Schema
- Boot Partitioning
- Schema
- Overview
- Transport
- Access Control Model
- Enforcement
- AccessCheck Pseudocode
- Required Sections
- Terminology
- Self-Configuration
- Self-Configuration
- Scope
- Terminology
- Conventions
- Compatibility
- Failure Modes
- Constants
- Struct Layouts
- RSI Wire Format
- Configuration Reference
- Overview
- Hives
- Keys
- Layers
- Access Control
- Transaction Semantics
- Interface Model
- Syscalls
- Ioctls
- Error Model
- Protocol
- Operations
- Source Obligations
- Bootstrap Sequence
- Self-Configuration
- Backup Format
- Scope
- Terminology
- Prior Art
- Command Line and Startup
- Database Schema
- Concurrency Model
- Request Handling
- Terminology
- Terminology
- Terminology
- Event Model
- Scope
- Terminology
- Compatibility
- The Algorithm
- Auditing in AccessCheck
- Credential Projection
- Syscalls
- Token Ioctls
- LSM Blob Layouts
- Boot Sequence
- ABI Reference
- Well-Known SIDs
- Token Overview
- Token Structure
- Token Lifecycle
- Token Creation
- Linked Tokens and Elevation
- Token Access Rights
- PSB Overview
- PSB Lifecycle
- PIP Limitations
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Scope
- Terminology
- Compatibility
- The Algorithm
- Auditing in AccessCheck
- Credential Projection
- Syscalls
- Token Ioctls
- LSM Blob Layouts
- Boot Sequence
- ABI Reference
- Well-Known SIDs
- SD Inheritance
- Token Overview
- Token Structure
- Token Lifecycle
- Token Creation
- Linked Tokens and Elevation
- LogonSessions and Revocation
- Token Access Rights
- PSB Overview
- Process Security Descriptors
- PSB Lifecycle
- PIP Limitations
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Terminology
- Overview
- Layers
- Access Control
- Terminology
- Protocol
- Ad-Hoc Jobs
- How Peios Security Works
- Glossary
- Troubleshooting Access Denied Errors
- Understanding Identity on Peios
- Inspecting a Thread's Impersonation State
- Comparing Two Tokens
- How Tokens Work
- Primary Tokens vs Impersonation Tokens
- Inspecting a Process's Identity
- Understanding Why an Access Decision Was Made
- Understanding Impersonation
- Impersonation Levels Explained
- How Identity Cascades Across Local Services
- Setting the Impersonation Level on a Connection
- Impersonating a Client's Identity
- Reverting to Service Identity
- Testing Public Accessibility with Anonymous Impersonation
- Workers
- Terminology
- The Algorithm
- Syscalls
- Token Ioctls
- LSM Blob Layouts
- Boot Sequence
- ABI Reference
- Well-Known SIDs
- Token Creation
- Linked Tokens and Elevation
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Terminology
- The Algorithm
- Syscalls
- Token Ioctls
- LSM Blob Layouts
- Boot Sequence
- ABI Reference
- Well-Known SIDs
- Token Lifecycle
- Token Creation
- Linked Tokens and Elevation
- LogonSessions and Revocation
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Glossary
- Troubleshooting Access Denied Errors
- Understanding Identity on Peios
- Inspecting a Thread's Impersonation State
- Understanding Impersonation
- Impersonation Levels Explained
- How Identity Cascades Across Local Services
- Setting the Impersonation Level on a Connection
- Impersonating a Client's Identity
- Terminology
- Event Model
- Terminology
- The Algorithm
- Credential Projection
- Syscalls
- Token Ioctls
- Token Overview
- Token Lifecycle
- Token Creation
- Token Access Rights
- PSB Lifecycle
- Impersonation Gates
- Impersonation Lifecycle
- Terminology
- The Algorithm
- Credential Projection
- Syscalls
- Token Ioctls
- SD Inheritance
- Token Overview
- Token Lifecycle
- Token Creation
- Token Access Rights
- Process Security Descriptors
- PSB Lifecycle
- Impersonation Gates
- Impersonation Lifecycle
- Overview
- Layers
- Protocol
- Glossary
- Inspecting a Thread's Impersonation State
- Comparing Two Tokens
- Primary Tokens vs Impersonation Tokens
- Inspecting a Process's Identity
- Understanding Why an Access Decision Was Made
- Understanding Impersonation
- Impersonation Levels Explained
- How Identity Cascades Across Local Services
- Impersonating a Client's Identity
- Reverting to Service Identity
- Testing Public Accessibility with Anonymous Impersonation
- Scope
- Terminology
- Mandatory Integrity Control
- Auditing in AccessCheck
- The Set-Security Interface
- ABI Reference
- SID Format
- Well-Known SIDs
- SD Structure
- ACE Types
- Token Overview
- Token Lifecycle
- PSB Lifecycle
- Impersonation Gates
- Impersonation Lifecycle
- Scope
- Terminology
- Mandatory Integrity Control
- Auditing in AccessCheck
- The Set-Security Interface
- ABI Reference
- SID Format
- Well-Known SIDs
- SD Structure
- ACE Types
- Token Overview
- Token Structure
- Token Lifecycle
- Process Security Descriptors
- PSB Lifecycle
- Impersonation Gates
- Impersonation Lifecycle
- Terminology
- How Peios Security Works
- Understanding Auditing on Peios
- How Peios Eliminates Root
- Glossary
- Troubleshooting Access Denied Errors
- Understanding Identity on Peios
- Comparing Two Tokens
- Working with Elevation
- How Tokens Work
- Understanding Access Control on Peios
- Understanding Why an Access Decision Was Made
- How Security Descriptors Work
- What Are Access Control Lists (DACLs and SACLs)
- How AccessCheck Evaluates Every Access Decision
- Understanding Mandatory Integrity Control (MIC)
- Integrity Levels Explained
- Setting and Changing Mandatory Labels
- Understanding Process Integrity Protection (PIP)
- Impersonation Levels Explained
- Understanding Application Confinement
- Understanding Restricted Tokens
- Scope
- ABI Reference
- Privilege Catalog
- Scope
- ABI Reference
- Well-Known SIDs
- Privilege Catalog
- Scope
- Terminology
- Compatibility
- Command Set
- Service Output Handling
- Security Model
- Bootstrap
- Overview
- Service Identity
- Job Model
- Ad-Hoc Jobs
- Operation Model
- Well-Known SIDs Reference
- Understanding Logon Sessions
- Privilege Reference
- Setting the Impersonation Level on a Connection
- Background Jobs
- How Provium Works
- Wire Protocol
- Lua API Reference
- Conventions
- Prior Art
- PSD Numbers
- Directory Layout
- Version Numbers
- Metadata
- Section Addressing
- Changelog Format
- Dictionary Integration
- External Reference Conventions
- Scope
- Terminology
- Event Model
- Syscall Interface
- Constants
- Scope
- Terminology
- Conventions
- Event Model
- Emission API
- Syscall Interface
- Constants
- Scope
- Terminology
- Conventions
- Compatibility
- The DACL Walk
- Object ACEs and Property-Level Access
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Handle Model
- KACS-Native Open
- Legacy Open Compatibility
- The Set-Security Interface
- Credential Projection
- DAC Neutralization
- setuid Behaviour
- Syscalls
- LSM Blob Layouts
- Inspection Interfaces
- ABI Reference
- LSM Hook Matrix
- Kernel Patches
- Build Configuration
- SID Format
- Well-Known SIDs
- SD Structure
- Resource Attributes
- Conditional ACE Bytecode Reference
- SD Storage
- ACL Format
- Access Masks
- ACE Types
- ACE Ordering
- Conditional ACEs
- Claim Attribute Format
- Token Overview
- Token Structure
- Token Lifecycle
- Linked Tokens and Elevation
- Sessions and Revocation
- PSB Fields
- Enforcement Points
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Scope
- Terminology
- Conventions
- Compatibility
- The DACL Walk
- Object ACEs and Property-Level Access
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Handle Model
- KACS-Native Open
- Legacy Open Compatibility
- The Set-Security Interface
- Credential Projection
- DAC Neutralization
- setuid Behaviour
- Syscalls
- LSM Blob Layouts
- Inspection Interfaces
- ABI Reference
- LSM Hook Matrix
- Kernel Patches
- Build Configuration
- SID Format
- Well-Known SIDs
- SD Structure
- Resource Attributes
- Conditional ACE Bytecode Reference
- SD Storage
- ACL Format
- Access Masks
- ACE Types
- ACE Ordering
- Conditional ACEs
- Claim Attribute Format
- Token Overview
- Token Structure
- Token Lifecycle
- Linked Tokens and Elevation
- LogonSessions and Revocation
- PSB Fields
- Process Security Descriptors
- Enforcement Points
- PIP Limitations
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Scope
- Terminology
- Compatibility
- Struct Layouts
- Configuration Reference
- Hives
- Keys
- Layers
- Access Control
- Interface Model
- Syscalls
- Ioctls
- Bootstrap Sequence
- Scope
- Terminology
- Compatibility
- Protocol
- Security Model
- Service Identity
- Pre-Exec Sequence
- Ad-Hoc Jobs
- Scope
- Prior Art
- Startup
- Failure Modes
- Constants
- Schema
- Retention
- Event Queries
- Metric Queries
- Cross-Type Filtering
- Access Control Model
- Enforcement
- Glossary
- Frequently Asked Questions
- Project Structure
- Running Commands
- Assertions and Sub-tests
- Fixtures
- Workers
- Binary Packing
- provium.toml Reference
- Snapshots and Fixtures
- Lua API Reference
- Frequently Asked Questions
- meta.toml Reference
- Conventions
- PSD Numbers
- Required Sections
- RFC 2119 Keywords
- Section Addressing
- External Reference Conventions
- Conventions
- Conventions
- Self-Configuration
- Constants
- Conventions
- Self-Configuration
- Constants
- Conventions
- The Algorithm
- Central Access and Auditing Policy
- Syscalls
- SD Structure
- SD Storage
- Access Masks
- SD Inheritance
- Token Structure
- PSB Fields
- Binary Signing
- Process Protection
- Enforcement Points
- Conventions
- The Algorithm
- Central Access and Auditing Policy
- Syscalls
- SD Structure
- SD Storage
- Access Masks
- SD Inheritance
- Token Structure
- PSB Fields
- Binary Signing
- Process Protection
- Enforcement Points
- Scope
- Terminology
- Conventions
- Compatibility
- Failure Modes
- Constants
- Struct Layouts
- RSI Wire Format
- Configuration Reference
- Overview
- Hives
- Keys
- Path Entries
- Values
- Layers
- Layer Resolution
- Deletion
- Access Control
- Watch Model
- Watch Dispatch
- Transaction Semantics
- Interface Model
- Syscalls
- Ioctls
- Error Model
- Protocol
- Operations
- Source Obligations
- Bootstrap Sequence
- Self-Configuration
- Backup Format
- Scope
- Terminology
- Prior Art
- Command Line and Startup
- Database Schema
- Concurrency Model
- Request Handling
- Scope
- Conventions
- Compatibility
- Shutdown
- Protocol
- Service Output Handling
- Security Model
- Registry Key Reference
- Bootstrap
- Phase 2
- Boot Modes
- Overview
- Definition Schema
- Service Security
- Configuration Generations
- Ad-Hoc Jobs
- Terminology
- Conventions
- Prior Art
- Startup
- Configuration Keys
- Constants
- Storage Sharding
- Batch Writer
- Schema
- Database Lifecycle
- Adaptive Indexing
- Retention
- Transport
- Log Writer
- Schema
- Database Lifecycle
- Retention
- Overview
- Transport
- Schema
- Database Lifecycle
- Retention
- Adaptive Rollups
- Overview
- Event Queries
- Metric Queries
- Cross-Type Filtering
- Execution
- Transport
- Access Control Model
- How Peios Security Works
- Understanding Conditional ACEs
- User Claims, Device Claims, and Resource Attributes
- Understanding Auditing on Peios
- Working with Auditing
- Frequently Asked Questions
- Understanding Identity on Peios
- Inspecting a Thread's Impersonation State
- Inspecting a Process's Identity
- Understanding Access Control on Peios
- Reading an Object's Security Descriptor
- How Security Descriptors Work
- How AccessCheck Evaluates Every Access Decision
- Understanding Access Masks and Rights
- How SD Inheritance Works
- Understanding Mandatory Integrity Control (MIC)
- Understanding Process Integrity Protection (PIP)
- How PIP Protects Objects
- How Binary Signing Determines PIP Level
- Understanding Privileges on Peios
- Impersonation Levels Explained
- How Identity Cascades Across Local Services
- Impersonating a Client's Identity
- Understanding Application Confinement
- What Is Trail
- Search
- Dark Mode
- What Is Provium
- Workers
- Raw Syscalls
- Pointer Patching
- What Is Cairn
- CLI Commands
- Compatibility
- Impersonation Gates
- Compatibility
- Impersonation Gates
- Scope
- Constants
- RSI Wire Format
- Overview
- Path Entries
- Layers
- Layer Resolution
- Watch Model
- Watch Dispatch
- Ioctls
- Operations
- Backup Format
- Database Schema
- Request Handling
- Impersonation Levels Explained
- Dev Server
- Built-in Templates
- Web Board Overview
- Conventions
- Prior Art
- PSD Numbers
- External Reference Conventions
- Scope
- Terminology
- Conventions
- Compatibility
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Failure Modes
- Constants
- Recommended Implementation Optimisations
- Scope
- Terminology
- Conventions
- Compatibility
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Failure Modes
- Constants
- Recommended Implementation Optimisations
- Scope
- Auditing in AccessCheck
- setuid Behaviour
- Scope
- Auditing in AccessCheck
- setuid Behaviour
- Terminology
- Security Model
- Scope
- Terminology
- Prior Art
- Startup
- Shutdown
- Failure Modes
- Constants
- Overview
- KMES Consumption
- Batch Writer
- Gap Detection
- Synthetic Events
- Schema
- Retention
- Boot Partitioning
- Overview
- Event Queries
- Access Control Model
- Enforcement
- Required Sections
- Terminology
- Self-Configuration
- Self-Configuration
- Compatibility
- AccessCheck Overview
- Use-Time Semantics
- ACE Types
- PSB Lifecycle
- Compatibility
- AccessCheck Overview
- Use-Time Semantics
- Credential Projection
- ACE Types
- PSB Lifecycle
- Scope
- Terminology
- Conventions
- Compatibility
- Failure Modes
- Constants
- Struct Layouts
- RSI Wire Format
- Configuration Reference
- Overview
- Keys
- Path Entries
- Values
- Layers
- Layer Resolution
- Deletion
- Access Control
- Watch Model
- Watch Dispatch
- Transaction Semantics
- Syscalls
- Ioctls
- Error Model
- Protocol
- Operations
- Source Obligations
- Bootstrap Sequence
- Self-Configuration
- Backup Format
- Terminology
- Command Line and Startup
- Database Schema
- Request Handling
- Terminology
- Compatibility
- Security Model
- Terminology
- Overview
- How Peios Security Works
- How Attribute-Based Access Control Works
- Understanding Process Security
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- File SDs and Extended Attributes
- Conventions
- Prior Art
- PSD Numbers
- Required Sections
- Scope
- Terminology
- Event Model
- Ring Buffer
- Self-Configuration
- Failure Modes
- Constants
- Scope
- Terminology
- Event Model
- Ring Buffer
- Self-Configuration
- Failure Modes
- Constants
- Scope
- Terminology
- Conventions
- Compatibility
- Failure Modes
- Constants
- Struct Layouts
- RSI Wire Format
- Configuration Reference
- Overview
- Hives
- Keys
- Path Entries
- Values
- Layers
- Layer Resolution
- Deletion
- Access Control
- Watch Model
- Watch Dispatch
- Transaction Semantics
- Interface Model
- Syscalls
- Ioctls
- Protocol
- Operations
- Source Obligations
- Bootstrap Sequence
- Self-Configuration
- Backup Format
- Scope
- Terminology
- Prior Art
- Command Line and Startup
- Database Schema
- Concurrency Model
- Scope
- Terminology
- Conventions
- Compatibility
- Protocol
- Security Model
- Phase 2
- Boot Modes
- Service Security
- Scope
- Prior Art
- Startup
- Failure Modes
- Constants
- Schema
- Event Queries
- Scope
- Terminology
- The Handle Model
- File SD Storage
- DAC Neutralization
- LSM Blob Layouts
- Boot Sequence
- LSM Hook Matrix
- Kernel Patches
- Build Configuration
- SD Storage
- Token Overview
- PSB Overview
- Process Security Descriptors
- Binary Signing
- Impersonation Lifecycle
- Scope
- Terminology
- The Handle Model
- File SD Storage
- DAC Neutralization
- LSM Blob Layouts
- Boot Sequence
- LSM Hook Matrix
- Kernel Patches
- Build Configuration
- SD Storage
- Token Overview
- PSB Overview
- Process Security Descriptors
- Binary Signing
- Enforcement Points
- Impersonation Lifecycle
- Understanding Linux Compatibility
- Terminology
- Syscalls
- Token Ioctls
- Boot Sequence
- ABI Reference
- SID Format
- Well-Known SIDs
- Token Creation
- Token Adjustment
- Sessions and Revocation
- Terminology
- Syscalls
- Token Ioctls
- Boot Sequence
- ABI Reference
- SID Format
- Well-Known SIDs
- Token Creation
- Token Adjustment
- LogonSessions and Revocation
- Glossary
- Inspecting a Thread's Impersonation State
- Querying Token Information (SIDs, Groups, Privileges)
- Well-Known SIDs Reference
- Understanding Logon Sessions
- Inspecting a Process's Identity
- Terminology
- Syscalls
- Token Ioctls
- ABI Reference
- Token Structure
- Token Creation
- Linked Tokens and Elevation
- Sessions and Revocation
- Impersonation Gates
- Terminology
- The Algorithm
- Auditing in AccessCheck
- Syscalls
- Token Ioctls
- Inspection Interfaces
- Boot Sequence
- ABI Reference
- SID Format
- Well-Known SIDs
- SD Storage
- Token Structure
- Token Lifecycle
- Token Creation
- Linked Tokens and Elevation
- LogonSessions and Revocation
- Privilege Catalog
- Impersonation Gates
- Terminology
- Service Identity
- Glossary
- Understanding Identity on Peios
- Inspecting a Thread's Impersonation State
- Comparing Two Tokens
- Well-Known SIDs Reference
- How Tokens Work
- Understanding Logon Sessions
- How Linked Tokens and Elevation Work
- Inspecting a Process's Identity
- Working with PIP Protection
- Working with Confinement
- Conventions
- Prior Art
- PSD Numbers
- Scope
- Terminology
- Central Access and Auditing Policy
- Syscalls
- Well-Known SIDs
- SD Storage
- PSB Fields
- Binary Signing
- Scope
- Terminology
- Central Access and Auditing Policy
- Syscalls
- Well-Known SIDs
- SD Storage
- PSB Fields
- Binary Signing
- PIP Limitations
- Scope
- Terminology
- Hives
- Access Control
- Transaction Semantics
- Bootstrap Sequence
- Scope
- Terminology
- Conventions
- Prior Art
- Command Line and Startup
- Database Schema
- Concurrency Model
- Request Handling
- Terminology
- Boot Modes
- Prior Art
- Startup
- Failure Modes
- Overview
- Log Queries
- Metric Queries
- Cross-Type Filtering
- Access Control Model
- Enforcement
- How Binary Signing Determines PIP Level
- Working with PIP Protection
- Scope
- Terminology
- Prior Art
- Binary Format
- Comparison
- Allocation
- Token Ioctls
- Boot Sequence
- ABI Reference
- Token Structure
- Token Creation
- Sessions and Revocation
- Privilege Catalog
- Terminology
- Auditing in AccessCheck
- Syscalls
- Token Ioctls
- Boot Sequence
- ABI Reference
- Token Structure
- Token Lifecycle
- Token Creation
- LogonSessions and Revocation
- Privilege Catalog
- Terminology
- Compatibility
- The Algorithm
- Mandatory Integrity Control
- PIP in AccessCheck
- Central Access and Auditing Policy
- The Handle Model
- The Set-Security Interface
- Well-Known SIDs
- SD Structure
- ACE Types
- Ownership
- Token Structure
- PSB Lifecycle
- Privilege Model
- Privilege Catalog
- Impersonation Gates
- Impersonation Lifecycle
- Terminology
- Compatibility
- The Algorithm
- Mandatory Integrity Control
- PIP in AccessCheck
- Central Access and Auditing Policy
- The Handle Model
- The Set-Security Interface
- Well-Known SIDs
- SD Structure
- ACE Types
- Ownership
- Token Structure
- Process Security Descriptors
- PSB Lifecycle
- Privilege Model
- Privilege Catalog
- Impersonation Gates
- Impersonation Lifecycle
- How Peios Security Works
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- AccessCheck Pseudocode
- How AccessCheck Evaluates Every Access Decision
- Understanding Mandatory Integrity Control (MIC)
- Integrity Levels Explained
- Understanding Process Integrity Protection (PIP)
- Terminology
- The Algorithm
- Mandatory Integrity Control
- SD Structure
- ACE Types
- ACE Ordering
- Token Lifecycle
- Terminology
- The Algorithm
- Mandatory Integrity Control
- SD Structure
- ACE Types
- ACE Ordering
- SD Inheritance
- Token Lifecycle
- How Peios Security Works
- Troubleshooting Access Denied Errors
- Reading an Object's Security Descriptor
- What Are Access Control Lists (DACLs and SACLs)
- How AccessCheck Evaluates Every Access Decision
- Understanding Mandatory Integrity Control (MIC)
- Integrity Levels Explained
- Setting and Changing Mandatory Labels
- Terminology
- Terminology
- Compatibility
- AccessCheck Overview
- The Algorithm
- Restricted Tokens
- Object ACEs and Property-Level Access
- Central Access and Auditing Policy
- Syscalls
- ABI Reference
- SD Storage
- Access Masks
- SD Inheritance
- Terminology
- Compatibility
- AccessCheck Overview
- The Algorithm
- Mandatory Integrity Control
- Restricted Tokens
- Object ACEs and Property-Level Access
- Central Access and Auditing Policy
- Syscalls
- ABI Reference
- SD Storage
- Access Masks
- SD Inheritance
- Constants
- Access Control Model
- Enforcement
- How Peios Security Works
- Understanding Process Security
- Understanding Access Control on Peios
- File Access Rights Reference
- How Security Descriptors Work
- How AccessCheck Evaluates Every Access Decision
- Understanding Access Masks and Rights
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Constants
- Recommended Implementation Optimisations
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Constants
- Recommended Implementation Optimisations
- Scope
- Terminology
- Compatibility
- AccessCheck Overview
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Handle Model
- KACS-Native Open
- Use-Time Semantics
- File SD Storage
- The Set-Security Interface
- Credential Projection
- DAC Neutralization
- setuid Behaviour
- Syscalls
- Token Ioctls
- LSM Blob Layouts
- LSM Hook Matrix
- Kernel Patches
- Conditional ACE Bytecode Reference
- ACE Types
- SD Inheritance
- Token Overview
- Token Structure
- Token Lifecycle
- Token Creation
- Token Adjustment
- Token Access Rights
- PSB Fields
- Process Security Descriptors
- Privilege Model
- Privilege Catalog
- Process Protection
- Enforcement Points
- Impersonation Levels
- Scope
- Terminology
- Compatibility
- AccessCheck Overview
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Handle Model
- KACS-Native Open
- Use-Time Semantics
- File SD Storage
- The Set-Security Interface
- Credential Projection
- DAC Neutralization
- setuid Behaviour
- Syscalls
- Token Ioctls
- LSM Blob Layouts
- LSM Hook Matrix
- Kernel Patches
- Well-Known SIDs
- Conditional ACE Bytecode Reference
- ACE Types
- SD Inheritance
- Token Overview
- Token Structure
- Token Lifecycle
- Token Creation
- Token Adjustment
- LogonSessions and Revocation
- Token Access Rights
- PSB Fields
- Process Security Descriptors
- Privilege Model
- Privilege Catalog
- Process Protection
- Enforcement Points
- Impersonation Levels
- Impersonation Lifecycle
- Scope
- Terminology
- Compatibility
- Failure Modes
- Constants
- RSI Wire Format
- Configuration Reference
- Overview
- Keys
- Path Entries
- Layers
- Layer Resolution
- Deletion
- Access Control
- Watch Model
- Watch Dispatch
- Transaction Semantics
- Interface Model
- Syscalls
- Ioctls
- Error Model
- Protocol
- Operations
- Source Obligations
- Bootstrap Sequence
- Self-Configuration
- Backup Format
- Terminology
- Prior Art
- Database Schema
- Concurrency Model
- Request Handling
- Scope
- Terminology
- Compatibility
- Command Set
- Security Model
- Registry Key Reference
- Bootstrap
- Phase 2
- Boot Modes
- Overview
- Definition Schema
- Service Security
- Configuration Generations
- Pre-Exec Sequence
- States and Transitions
- Transition Causes
- Restart and Reload
- Dependency Relationships
- Graph Validation and Execution
- Job Model
- Ad-Hoc Jobs
- Operation Model
- Conflict Resolution
- Timers
- Shutdown
- Failure Modes
- Batch Writer
- Schema
- Adaptive Indexing
- Retention
- Boot Partitioning
- Log Queries
- Access Control Model
- How Peios Security Works
- Writing Conditional ACE Expressions
- Understanding Auditing on Peios
- Working with Auditing
- Understanding Process Security
- Understanding Linux Compatibility
- How Peios Eliminates Root
- Working with Linux Applications
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- Troubleshooting Common Issues
- Understanding Identity on Peios
- Inspecting a Thread's Impersonation State
- How Tokens Work
- Primary Tokens vs Impersonation Tokens
- Machine Identity in a Domain
- How Linked Tokens and Elevation Work
- File SDs and Extended Attributes
- The Check-at-Open Model
- File Access Rights Reference
- How AccessCheck Evaluates Every Access Decision
- How SD Inheritance Works
- Understanding Mandatory Integrity Control (MIC)
- How PIP Protects Objects
- Understanding Privileges on Peios
- Privilege Reference
- Impersonation Levels Explained
- Setting the Impersonation Level on a Connection
- Impersonating a Client's Identity
- Reverting to Service Identity
- Understanding Restricted Tokens
- Creating Restricted Tokens
- What Is Provium
- Running Commands
- How Provium Works
- Guest Agent
- What Is Cairn
- Scope
- Terminology
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Constants
- Recommended Implementation Optimisations
- Scope
- Terminology
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Constants
- Recommended Implementation Optimisations
- Terminology
- Constants
- Synthetic Events
- Event Queries
- Terminology
- Compatibility
- The Algorithm
- The DACL Walk
- Restricted Tokens
- Application Confinement
- The Set-Security Interface
- DAC Neutralization
- setuid Behaviour
- Syscalls
- Token Ioctls
- Boot Sequence
- ABI Reference
- SID Format
- Well-Known SIDs
- SD Structure
- Access Masks
- SD Inheritance
- Ownership
- Conditional ACEs
- Token Structure
- Token Creation
- Token Adjustment
- Token Access Rights
- Process Security Descriptors
- PSB Lifecycle
- Terminology
- Compatibility
- The Algorithm
- The DACL Walk
- Restricted Tokens
- Application Confinement
- File SD Storage
- The Set-Security Interface
- DAC Neutralization
- setuid Behaviour
- Syscalls
- Token Ioctls
- Boot Sequence
- ABI Reference
- LSM Hook Matrix
- SID Format
- Well-Known SIDs
- SD Structure
- Access Masks
- SD Inheritance
- Ownership
- Conditional ACEs
- Token Structure
- Token Lifecycle
- Token Creation
- Token Adjustment
- Token Access Rights
- Process Security Descriptors
- PSB Lifecycle
- Struct Layouts
- Layers
- Access Control
- Ioctls
- Backup Format
- Job Model
- How Peios Security Works
- How Attribute-Based Access Control Works
- Understanding Central Access Policy
- Understanding Process Security
- Working with Process Security
- Understanding Linux Compatibility
- Working with Linux Applications
- Glossary
- Frequently Asked Questions
- Well-Known SIDs Reference
- Understanding Access Control on Peios
- Reading an Object's Security Descriptor
- Transferring Ownership of an Object
- Using OWNER RIGHTS to Restrict or Expand Owner Access
- Understanding Why an Access Decision Was Made
- File SDs and Extended Attributes
- File Access Rights Reference
- How Security Descriptors Work
- AccessCheck Pseudocode
- What Are Access Control Lists (DACLs and SACLs)
- How AccessCheck Evaluates Every Access Decision
- Understanding Access Masks and Rights
- Null DACL vs Empty DACL
- Understanding Ownership and Owner Rights
- Setting and Changing Mandatory Labels
- Working with PIP Protection
- Understanding Privileges on Peios
- Understanding Application Confinement
- Understanding Restricted Tokens
- The DACL Walk
- Restricted Tokens
- Application Confinement
- Well-Known SIDs
- SD Structure
- Ownership
- The DACL Walk
- Restricted Tokens
- Application Confinement
- Well-Known SIDs
- SD Structure
- Ownership
- How Peios Security Works
- Glossary
- Well-Known SIDs Reference
- Using OWNER RIGHTS to Restrict or Expand Owner Access
- How AccessCheck Evaluates Every Access Decision
- Understanding Ownership and Owner Rights
- Understanding Restricted Tokens
- Conventions
- Prior Art
- PSD Numbers
- Required Sections
- Scope
- Compatibility
- Scope
- Compatibility
- Scope
- Terminology
- Boot Sequence
- Well-Known SIDs
- Token Lifecycle
- Sessions and Revocation
- PSB Fields
- Binary Signing
- Privilege Catalog
- Enforcement Points
- PIP Limitations
- Scope
- Terminology
- The Set-Security Interface
- Token Ioctls
- Boot Sequence
- Well-Known SIDs
- Token Lifecycle
- LogonSessions and Revocation
- PSB Fields
- Binary Signing
- Privilege Catalog
- Enforcement Points
- PIP Limitations
- Scope
- Watch Model
- Source Obligations
- Bootstrap Sequence
- Scope
- Command Line and Startup
- Scope
- Terminology
- Compatibility
- Shutdown
- Protocol
- Command Set
- Service Output Handling
- Security Model
- Registry Key Reference
- Bootstrap
- Phase 2
- Boot Modes
- Overview
- Definition Schema
- Service Identity
- Service Security
- Configuration Generations
- Pre-Exec Sequence
- Health Checks
- States and Transitions
- Transition Causes
- Restart and Reload
- Dependency Relationships
- Graph Validation and Execution
- Job Model
- Ad-Hoc Jobs
- Operation Model
- Conflict Resolution
- Timers
- Scope
- Terminology
- Prior Art
- Startup
- Shutdown
- Failure Modes
- Boot Partitioning
- Overview
- Transport
- Log Queries
- Enforcement
- How Binary Signing Determines PIP Level
- Working with PIP Protection
- Project Structure
- provium.toml Reference
- Frequently Asked Questions
- Scope
- Terminology
- Conventions
- Prior Art
- PSD Numbers
- Directory Layout
- Version Numbers
- Required Sections
- Pseudocode Conventions
- Dictionary Integration
- External Reference Conventions
- Scope
- Prior Art
- Generation
- Binary Format
- Allocation
- Scope
- Terminology
- Compatibility
- Scope
- Terminology
- Compatibility
- Scope
- Terminology
- Compatibility
- Auditing in AccessCheck
- KACS-Native Open
- Use-Time Semantics
- File SD Storage
- DAC Neutralization
- setuid Behaviour
- ABI Reference
- Well-Known SIDs
- SD Structure
- SD Storage
- Token Overview
- PSB Fields
- Binary Signing
- Privilege Catalog
- Scope
- Terminology
- Compatibility
- Mandatory Integrity Control
- Auditing in AccessCheck
- KACS-Native Open
- Use-Time Semantics
- File SD Storage
- Credential Projection
- DAC Neutralization
- setuid Behaviour
- ABI Reference
- Well-Known SIDs
- SD Structure
- SD Storage
- Token Overview
- PSB Fields
- Binary Signing
- Privilege Catalog
- Impersonation Lifecycle
- Scope
- Terminology
- Compatibility
- Values
- Access Control
- Interface Model
- Scope
- Scope
- Terminology
- Compatibility
- Service Output Handling
- Boot Modes
- Scope
- Terminology
- Overview
- Transport
- How Peios Security Works
- How Attribute-Based Access Control Works
- Understanding Central Access Policy
- Working with Auditing
- Understanding Process Security
- Process Mitigations
- Understanding Linux Compatibility
- How Peios Eliminates Root
- Working with Linux Applications
- Glossary
- Frequently Asked Questions
- Understanding Identity on Peios
- Well-Known SIDs Reference
- What Are Security Identifiers (SIDs)
- Primary Tokens vs Impersonation Tokens
- Understanding Logon Sessions
- Service Identities and Per-Service SIDs
- How Linked Tokens and Elevation Work
- Understanding Access Control on Peios
- Reading an Object's Security Descriptor
- File SDs and Extended Attributes
- The Check-at-Open Model
- File Access Rights Reference
- How Security Descriptors Work
- AccessCheck Pseudocode
- How AccessCheck Evaluates Every Access Decision
- Understanding Access Masks and Rights
- Integrity Levels Explained
- Understanding Process Integrity Protection (PIP)
- How Binary Signing Determines PIP Level
- Working with PIP Protection
- Privilege Reference
- How Identity Cascades Across Local Services
- Quick Start
- Project Structure
- Pathways
- Inter-Page Links
- Frontmatter Reference
- Frequently Asked Questions
- Quick Start
- The Algorithm
- Central Access and Auditing Policy
- ABI Reference
- SD Structure
- ACE Types
- PSB Fields
- Process Security Descriptors
- Binary Signing
- Process Protection
- The Algorithm
- Central Access and Auditing Policy
- ABI Reference
- SD Structure
- ACE Types
- PSB Fields
- Process Security Descriptors
- Binary Signing
- Process Protection
- Glossary
- Troubleshooting Access Denied Errors
- Understanding Process Integrity Protection (PIP)
- How PIP Protects Objects
- How Binary Signing Determines PIP Level
- Working with PIP Protection
- PIP in AccessCheck
- LSM Blob Layouts
- ABI Reference
- Well-Known SIDs
- ACE Types
- PSB Fields
- Binary Signing
- Process Protection
- PIP in AccessCheck
- LSM Blob Layouts
- ABI Reference
- Well-Known SIDs
- ACE Types
- PSB Fields
- Binary Signing
- Process Protection
- How PIP Protects Objects
- How Binary Signing Determines PIP Level
- Working with PIP Protection
- Scope
- Terminology
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Failure Modes
- Scope
- Terminology
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Failure Modes
- Scope
- Terminology
- DAC Neutralization
- Boot Sequence
- Build Configuration
- Token Lifecycle
- Scope
- Terminology
- DAC Neutralization
- Boot Sequence
- Build Configuration
- Token Lifecycle
- Scope
- Terminology
- Interface Model
- Syscalls
- Bootstrap Sequence
- Terminology
- Ad-Hoc Jobs
- Startup
- meta.toml Reference
- Self-Configuration
- Self-Configuration
- Scope
- Terminology
- Compatibility
- Failure Modes
- Configuration Reference
- Overview
- Keys
- Path Entries
- Values
- Layers
- Layer Resolution
- Deletion
- Watch Model
- Transaction Semantics
- Ioctls
- Error Model
- Protocol
- Source Obligations
- Bootstrap Sequence
- Self-Configuration
- Backup Format
- Overview
- How Security Descriptors Work
- How ACE Ordering Affects Access Decisions
- How SD Inheritance Works
- Terminology
- Event Model
- Terminology
- Credential Projection
- Syscalls
- Token Ioctls
- Inspection Interfaces
- ABI Reference
- Token Overview
- Token Structure
- Token Lifecycle
- Token Access Rights
- Process Security Descriptors
- PSB Lifecycle
- Enforcement Points
- Impersonation Gates
- Impersonation Lifecycle
- Terminology
- Credential Projection
- Syscalls
- Token Ioctls
- Inspection Interfaces
- ABI Reference
- SD Structure
- SD Inheritance
- Token Overview
- Token Structure
- Token Lifecycle
- LogonSessions and Revocation
- Token Access Rights
- Process Security Descriptors
- PSB Lifecycle
- Enforcement Points
- Impersonation Gates
- Impersonation Lifecycle
- Access Control
- Ad-Hoc Jobs
- Constants
- Schema
- Glossary
- Inspecting a Thread's Impersonation State
- Comparing Two Tokens
- Primary Tokens vs Impersonation Tokens
- Inspecting a Process's Identity
- Privilege Reference
- Understanding Impersonation
- Impersonating a Client's Identity
- Reverting to Service Identity
- Dictionary Integration
- Scope
- Self-Configuration
- Scope
- Self-Configuration
- Scope
- Terminology
- The Algorithm
- Restricted Tokens
- Object ACEs and Property-Level Access
- Use-Time Semantics
- Credential Projection
- setuid Behaviour
- Boot Sequence
- SID Format
- Well-Known SIDs
- SD Structure
- ACE Types
- SD Inheritance
- Token Creation
- Linked Tokens and Elevation
- PSB Overview
- Privilege Model
- Privilege Catalog
- Scope
- Terminology
- The Algorithm
- Restricted Tokens
- Object ACEs and Property-Level Access
- Use-Time Semantics
- Credential Projection
- setuid Behaviour
- Boot Sequence
- SID Format
- Well-Known SIDs
- SD Structure
- ACE Types
- SD Inheritance
- Token Creation
- Linked Tokens and Elevation
- PSB Overview
- Privilege Model
- Privilege Catalog
- Terminology
- Hives
- Layers
- Access Control
- Scope
- Terminology
- Shutdown
- Bootstrap
- Definition Schema
- Service Identity
- Scope
- How Peios Security Works
- Understanding Auditing on Peios
- Working with Auditing
- Understanding Process Security
- How Peios Eliminates Root
- Glossary
- Frequently Asked Questions
- Troubleshooting Common Issues
- Understanding Identity on Peios
- Well-Known SIDs Reference
- What Are Security Identifiers (SIDs)
- How Tokens Work
- Understanding Logon Sessions
- Machine Identity in a Domain
- How Linked Tokens and Elevation Work
- Inspecting a Process's Identity
- Understanding Access Control on Peios
- Setting a DACL on a File or Directory
- Adding Allow and Deny Rules
- How Security Descriptors Work
- What Are Access Control Lists (DACLs and SACLs)
- How ACE Ordering Affects Access Decisions
- Null DACL vs Empty DACL
- Understanding Ownership and Owner Rights
- Understanding Application Confinement
- Changelog Format
- Terminology
- Allocation
- Syscall Interface
- Ring Buffer
- Constants
- Syscall Interface
- Ring Buffer
- Constants
- Scope
- Terminology
- AccessCheck Overview
- The Algorithm
- Mandatory Integrity Control
- Restricted Tokens
- Application Confinement
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- Use-Time Semantics
- The Set-Security Interface
- DAC Neutralization
- setuid Behaviour
- Syscalls
- Token Ioctls
- Inspection Interfaces
- Boot Sequence
- ABI Reference
- LSM Hook Matrix
- Well-Known SIDs
- Token Overview
- Token Structure
- Token Lifecycle
- Token Creation
- Token Adjustment
- Linked Tokens and Elevation
- Token Access Rights
- Privilege Model
- Privilege Catalog
- PIP Limitations
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Scope
- Terminology
- AccessCheck Overview
- The Algorithm
- Mandatory Integrity Control
- Restricted Tokens
- Application Confinement
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- KACS-Native Open
- Use-Time Semantics
- The Set-Security Interface
- Credential Projection
- DAC Neutralization
- setuid Behaviour
- Syscalls
- Token Ioctls
- Inspection Interfaces
- Boot Sequence
- ABI Reference
- LSM Hook Matrix
- Well-Known SIDs
- Ownership
- Token Overview
- Token Structure
- Token Lifecycle
- Token Creation
- Token Adjustment
- Linked Tokens and Elevation
- Token Access Rights
- Privilege Model
- Privilege Catalog
- PIP Limitations
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Terminology
- Hives
- Layers
- Ioctls
- Error Model
- Protocol
- Source Obligations
- Scope
- Terminology
- Security Model
- Bootstrap
- Phase 2
- Definition Schema
- Service Identity
- Pre-Exec Sequence
- Job Model
- Terminology
- How Peios Security Works
- Understanding Auditing on Peios
- Working with Auditing
- Understanding Process Security
- Working with Process Security
- Understanding Linux Compatibility
- How Peios Eliminates Root
- Working with Linux Applications
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- Understanding Identity on Peios
- Inspecting a Thread's Impersonation State
- Querying Token Information (SIDs, Groups, Privileges)
- Comparing Two Tokens
- Working with Elevation
- Well-Known SIDs Reference
- What Are Security Identifiers (SIDs)
- How Tokens Work
- Primary Tokens vs Impersonation Tokens
- Service Identities and Per-Service SIDs
- How Linked Tokens and Elevation Work
- Inspecting a Process's Identity
- Transferring Ownership of an Object
- Understanding Why an Access Decision Was Made
- The Check-at-Open Model
- AccessCheck Pseudocode
- How AccessCheck Evaluates Every Access Decision
- Understanding Ownership and Owner Rights
- Setting and Changing Mandatory Labels
- Understanding Process Integrity Protection (PIP)
- How PIP Protects Objects
- How Binary Signing Determines PIP Level
- Understanding Privileges on Peios
- Managing Privileges
- Privilege Reference
- Understanding Impersonation
- Impersonation Levels Explained
- How Identity Cascades Across Local Services
- Impersonating a Client's Identity
- Testing Public Accessibility with Anonymous Impersonation
- Understanding Application Confinement
- Understanding Restricted Tokens
- Creating Restricted Tokens
- Binary Packing
- Scope
- Terminology
- Compatibility
- AccessCheck Overview
- The Algorithm
- Mandatory Integrity Control
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Handle Model
- The Set-Security Interface
- Syscalls
- LSM Blob Layouts
- Inspection Interfaces
- ABI Reference
- LSM Hook Matrix
- Build Configuration
- Well-Known SIDs
- SD Structure
- ACE Types
- Ownership
- Token Lifecycle
- PSB Fields
- Process Security Descriptors
- PSB Lifecycle
- Binary Signing
- Privilege Model
- Privilege Catalog
- Process Protection
- Enforcement Points
- PIP Limitations
- Impersonation Lifecycle
- Scope
- Terminology
- Compatibility
- AccessCheck Overview
- The Algorithm
- Mandatory Integrity Control
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Handle Model
- The Set-Security Interface
- Syscalls
- LSM Blob Layouts
- Inspection Interfaces
- ABI Reference
- LSM Hook Matrix
- Build Configuration
- Well-Known SIDs
- SD Structure
- ACE Types
- Ownership
- Token Lifecycle
- PSB Fields
- Process Security Descriptors
- PSB Lifecycle
- Binary Signing
- Privilege Model
- Privilege Catalog
- Process Protection
- Enforcement Points
- PIP Limitations
- Impersonation Lifecycle
- Source Obligations
- How Peios Security Works
- Understanding Process Security
- Process Mitigations
- Working with Process Security
- How Peios Eliminates Root
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- Well-Known SIDs Reference
- AccessCheck Pseudocode
- Understanding Process Integrity Protection (PIP)
- How PIP Protects Objects
- How Binary Signing Determines PIP Level
- Working with PIP Protection
- Understanding Privileges on Peios
- Privilege Reference
- Syscalls
- Token Ioctls
- LSM Blob Layouts
- ABI Reference
- LSM Hook Matrix
- PSB Fields
- Process Security Descriptors
- PSB Lifecycle
- Process Protection
- Enforcement Points
- Syscalls
- Token Ioctls
- LSM Blob Layouts
- ABI Reference
- LSM Hook Matrix
- Token Lifecycle
- LogonSessions and Revocation
- PSB Fields
- Process Security Descriptors
- PSB Lifecycle
- Process Protection
- Enforcement Points
- Understanding Process Security
- Working with Process Security
- Scope
- Terminology
- PIP in AccessCheck
- Syscalls
- LSM Blob Layouts
- LSM Hook Matrix
- PSB Overview
- PSB Fields
- PSB Lifecycle
- Binary Signing
- Process Protection
- Enforcement Points
- PIP Limitations
- Impersonation Lifecycle
- Scope
- Terminology
- PIP in AccessCheck
- Syscalls
- LSM Blob Layouts
- LSM Hook Matrix
- PSB Overview
- PSB Fields
- PSB Lifecycle
- Binary Signing
- Process Protection
- Enforcement Points
- PIP Limitations
- Impersonation Lifecycle
- Dictionary Integration
- What Is Trail
- Project Structure
- Pages and Frontmatter
- Pathways
- Inter-Page Links
- trail.toml Reference
- Multi-Product Mode
- Navigation and Theming
- CLI Reference
- Frontmatter Reference
- Built-in Templates
- What Is Cairn
- Quick Start
- Project Structure
- CLI Commands
- Web Board Overview
- Data Model
- meta.toml Reference
- What Is Provium
- Quick Start
- Project Structure
- VM Lifecycle
- Running Commands
- Assertions and Sub-tests
- Fixtures
- Workers
- Raw Syscalls
- Ioctl
- Binary Packing
- Pointer Patching
- provium.toml Reference
- CLI Reference
- Resource Management
- How Provium Works
- Guest Agent
- Snapshots and Fixtures
- Lua API Reference
- Frequently Asked Questions
- Required Sections
- External Reference Conventions
- Terminology
- Terminology
- Event Model
- Ring Buffer
- Self-Configuration
- Failure Modes
- Constants
- Terminology
- Event Model
- Ring Buffer
- Self-Configuration
- Failure Modes
- Constants
- Scope
- Compatibility
- Central Access and Auditing Policy
- Syscalls
- SD Structure
- SD Storage
- Access Masks
- SD Inheritance
- PSB Fields
- Binary Signing
- Process Protection
- Scope
- Compatibility
- Central Access and Auditing Policy
- Syscalls
- SD Structure
- SD Storage
- Access Masks
- SD Inheritance
- PSB Fields
- Binary Signing
- Process Protection
- Impersonation Lifecycle
- Scope
- Terminology
- Conventions
- Compatibility
- Failure Modes
- Configuration Reference
- Overview
- Hives
- Keys
- Values
- Layers
- Layer Resolution
- Access Control
- Watch Model
- Watch Dispatch
- Transaction Semantics
- Interface Model
- Syscalls
- Ioctls
- Error Model
- Protocol
- Source Obligations
- Bootstrap Sequence
- Self-Configuration
- Backup Format
- Scope
- Prior Art
- Command Line and Startup
- Database Schema
- Concurrency Model
- Scope
- Terminology
- Conventions
- Compatibility
- Shutdown
- Protocol
- Command Set
- Service Output Handling
- Security Model
- Registry Key Reference
- Bootstrap
- Phase 2
- Boot Modes
- Overview
- Definition Schema
- Service Security
- Configuration Generations
- Pre-Exec Sequence
- Restart and Reload
- Dependency Relationships
- Ad-Hoc Jobs
- Timers
- Scope
- Terminology
- Prior Art
- Startup
- Shutdown
- Failure Modes
- Configuration Keys
- Storage Sharding
- Synthetic Events
- Database Lifecycle
- Transport
- Database Lifecycle
- Transport
- Schema
- Database Lifecycle
- Adaptive Rollups
- Transport
- Access Control Model
- Enforcement
- How Peios Security Works
- Understanding Central Access Policy
- Understanding Auditing on Peios
- Frequently Asked Questions
- Understanding Identity on Peios
- Service Identities and Per-Service SIDs
- Understanding Access Control on Peios
- Reading an Object's Security Descriptor
- How Security Descriptors Work
- How AccessCheck Evaluates Every Access Decision
- Understanding Access Masks and Rights
- How SD Inheritance Works
- Understanding Mandatory Integrity Control (MIC)
- Integrity Levels Explained
- Impersonation Levels Explained
- How Identity Cascades Across Local Services
- Setting the Impersonation Level on a Connection
- Impersonating a Client's Identity
- Required Sections
- Scope
- Terminology
- Conventions
- Compatibility
- Failure Modes
- Constants
- Struct Layouts
- RSI Wire Format
- Configuration Reference
- Keys
- Deletion
- Access Control
- Watch Dispatch
- Transaction Semantics
- Syscalls
- Ioctls
- Protocol
- Operations
- Source Obligations
- Bootstrap Sequence
- Self-Configuration
- Backup Format
- Scope
- Terminology
- Prior Art
- Command Line and Startup
- Database Schema
- Concurrency Model
- Request Handling
- Terminology
- Cross-Reference Validation
- Syscall Interface
- Ring Buffer
- Recommended Implementation Optimisations
- Syscall Interface
- Ring Buffer
- Recommended Implementation Optimisations
- Terminology
- AccessCheck Overview
- The Algorithm
- Object ACEs and Property-Level Access
- Central Access and Auditing Policy
- KACS-Native Open
- Use-Time Semantics
- Syscalls
- Token Ioctls
- ABI Reference
- Kernel Patches
- Build Configuration
- Well-Known SIDs
- SD Structure
- Access Masks
- Ownership
- Token Structure
- Token Creation
- Token Adjustment
- Token Access Rights
- Process Security Descriptors
- Privilege Catalog
- Enforcement Points
- Terminology
- AccessCheck Overview
- The Algorithm
- Object ACEs and Property-Level Access
- Central Access and Auditing Policy
- KACS-Native Open
- Use-Time Semantics
- Syscalls
- Token Ioctls
- ABI Reference
- Kernel Patches
- Build Configuration
- Well-Known SIDs
- SD Structure
- Access Masks
- Ownership
- Token Structure
- Token Lifecycle
- Token Creation
- Token Adjustment
- Token Access Rights
- Process Security Descriptors
- Binary Signing
- Privilege Catalog
- Enforcement Points
- Constants
- Overview
- Keys
- Layers
- Access Control
- Watch Dispatch
- Transaction Semantics
- Syscalls
- Ioctls
- Error Model
- Bootstrap Sequence
- Command Line and Startup
- Scope
- Shutdown
- Command Set
- Security Model
- Bootstrap
- Phase 2
- Boot Modes
- Overview
- Definition Schema
- Service Security
- Configuration Generations
- Pre-Exec Sequence
- Health Checks
- States and Transitions
- Transition Causes
- Dependency Relationships
- Graph Validation and Execution
- Ad-Hoc Jobs
- Conflict Resolution
- Startup
- Configuration Keys
- Storage Sharding
- Database Lifecycle
- User Claims, Device Claims, and Resource Attributes
- How Attribute-Based Access Control Works
- Working with Central Access Policy
- Process Mitigations
- Understanding Linux Compatibility
- How Peios Eliminates Root
- Glossary
- Troubleshooting Access Denied Errors
- Service Identities and Per-Service SIDs
- How Linked Tokens and Elevation Work
- Inspecting a Process's Identity
- File Access Rights Reference
- How Security Descriptors Work
- AccessCheck Pseudocode
- What Are Access Control Lists (DACLs and SACLs)
- Understanding Mandatory Integrity Control (MIC)
- Setting and Changing Mandatory Labels
- Understanding Process Integrity Protection (PIP)
- Understanding Privileges on Peios
- Privilege Reference
- Impersonation Levels Explained
- Testing Public Accessibility with Anonymous Impersonation
- Understanding Restricted Tokens
- Creating Restricted Tokens
- What Is Trail
- Quick Start
- How Provium Works
- Terminology
- The Algorithm
- Central Access and Auditing Policy
- SD Structure
- Resource Attributes
- Conditional ACE Bytecode Reference
- ACE Types
- ACE Ordering
- Conditional ACEs
- Claim Attribute Format
- Terminology
- The Algorithm
- Application Confinement
- Central Access and Auditing Policy
- The Set-Security Interface
- SD Structure
- Resource Attributes
- Conditional ACE Bytecode Reference
- ACE Types
- ACE Ordering
- SD Inheritance
- Conditional ACEs
- Claim Attribute Format
- Understanding Conditional ACEs
- User Claims, Device Claims, and Resource Attributes
- How Attribute-Based Access Control Works
- Writing Conditional ACE Expressions
- Understanding Central Access Policy
- Glossary
- Frequently Asked Questions
- Troubleshooting Common Issues
- How Security Descriptors Work
- AccessCheck Overview
- The Algorithm
- Restricted Tokens
- Application Confinement
- Central Access and Auditing Policy
- Token Ioctls
- ABI Reference
- Token Structure
- Token Creation
- Impersonation Gates
- AccessCheck Overview
- The Algorithm
- Restricted Tokens
- Application Confinement
- Central Access and Auditing Policy
- Token Ioctls
- ABI Reference
- Well-Known SIDs
- Token Structure
- Token Creation
- Impersonation Gates
- Access Control Model
- How Peios Security Works
- Glossary
- Troubleshooting Access Denied Errors
- AccessCheck Pseudocode
- How AccessCheck Evaluates Every Access Decision
- Understanding Restricted Tokens
- Scope
- Terminology
- Conventions
- Compatibility
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Failure Modes
- Constants
- Recommended Implementation Optimisations
- Scope
- Terminology
- Conventions
- Compatibility
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Failure Modes
- Constants
- Recommended Implementation Optimisations
- Auditing in AccessCheck
- Auditing in AccessCheck
- Terminology
- Protocol
- Service Output Handling
- Scope
- Terminology
- Prior Art
- Startup
- Shutdown
- Failure Modes
- Overview
- KMES Consumption
- Batch Writer
- Gap Detection
- Synthetic Events
- Adaptive Indexing
- Understanding Auditing on Peios
- Troubleshooting Common Issues
- Metadata
- Section Addressing
- Ring Buffer
- Self-Configuration
- Ring Buffer
- Self-Configuration
- Scope
- Terminology
- Conventions
- Compatibility
- AccessCheck Overview
- The Algorithm
- The DACL Walk
- Mandatory Integrity Control
- PIP in AccessCheck
- Central Access and Auditing Policy
- The Handle Model
- KACS-Native Open
- Legacy Open Compatibility
- Use-Time Semantics
- File SD Storage
- The Set-Security Interface
- setuid Behaviour
- Syscalls
- Token Ioctls
- LSM Blob Layouts
- Inspection Interfaces
- Boot Sequence
- ABI Reference
- LSM Hook Matrix
- SID Format
- SD Structure
- Resource Attributes
- SD Storage
- Access Masks
- ACE Types
- ACE Ordering
- SD Inheritance
- Ownership
- Conditional ACEs
- Claim Attribute Format
- Token Structure
- Token Lifecycle
- Token Creation
- Token Access Rights
- PSB Fields
- Process Security Descriptors
- PSB Lifecycle
- Binary Signing
- Privilege Model
- Privilege Catalog
- Process Protection
- Enforcement Points
- PIP Limitations
- Scope
- Terminology
- Conventions
- Compatibility
- AccessCheck Overview
- The Algorithm
- The DACL Walk
- Mandatory Integrity Control
- PIP in AccessCheck
- Central Access and Auditing Policy
- The Handle Model
- KACS-Native Open
- Legacy Open Compatibility
- Use-Time Semantics
- File SD Storage
- The Set-Security Interface
- setuid Behaviour
- Syscalls
- Token Ioctls
- LSM Blob Layouts
- Inspection Interfaces
- Boot Sequence
- ABI Reference
- LSM Hook Matrix
- SID Format
- SD Structure
- Resource Attributes
- SD Storage
- Access Masks
- ACE Types
- ACE Ordering
- SD Inheritance
- Ownership
- Conditional ACEs
- Claim Attribute Format
- Token Structure
- Token Lifecycle
- Token Creation
- LogonSessions and Revocation
- Token Access Rights
- PSB Fields
- Process Security Descriptors
- PSB Lifecycle
- Binary Signing
- Privilege Model
- Privilege Catalog
- Process Protection
- Enforcement Points
- PIP Limitations
- Scope
- Terminology
- Compatibility
- Failure Modes
- Constants
- Struct Layouts
- RSI Wire Format
- Configuration Reference
- Overview
- Keys
- Path Entries
- Layers
- Deletion
- Access Control
- Watch Model
- Transaction Semantics
- Interface Model
- Syscalls
- Ioctls
- Protocol
- Operations
- Source Obligations
- Bootstrap Sequence
- Self-Configuration
- Backup Format
- Terminology
- Prior Art
- Command Line and Startup
- Database Schema
- Request Handling
- Scope
- Terminology
- Compatibility
- Shutdown
- Protocol
- Security Model
- Registry Key Reference
- Bootstrap
- Overview
- Definition Schema
- Service Security
- States and Transitions
- Scope
- Terminology
- Prior Art
- Failure Modes
- Configuration Keys
- Metric Queries
- Access Control Model
- Enforcement
- How Peios Security Works
- User Claims, Device Claims, and Resource Attributes
- Writing Conditional ACE Expressions
- Understanding Central Access Policy
- Working with Central Access Policy
- Understanding Auditing on Peios
- Working with Auditing
- Understanding Process Security
- Working with Process Security
- Understanding Linux Compatibility
- How Peios Eliminates Root
- Working with Linux Applications
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- Troubleshooting Common Issues
- Understanding Identity on Peios
- What Are Security Identifiers (SIDs)
- Service Identities and Per-Service SIDs
- Machine Identity in a Domain
- Inspecting a Process's Identity
- Understanding Access Control on Peios
- Reading an Object's Security Descriptor
- Setting a DACL on a File or Directory
- Adding Allow and Deny Rules
- Breaking Inheritance on an Object
- Transferring Ownership of an Object
- Using OWNER RIGHTS to Restrict or Expand Owner Access
- Understanding Why an Access Decision Was Made
- File SDs and Extended Attributes
- The Check-at-Open Model
- File Access Rights Reference
- How Security Descriptors Work
- AccessCheck Pseudocode
- What Are Access Control Lists (DACLs and SACLs)
- How AccessCheck Evaluates Every Access Decision
- Understanding Access Masks and Rights
- Null DACL vs Empty DACL
- Understanding Ownership and Owner Rights
- Setting and Changing Mandatory Labels
- Working with PIP Protection
- Understanding Privileges on Peios
- Privilege Reference
- How Identity Cascades Across Local Services
- Impersonating a Client's Identity
- Testing Public Accessibility with Anonymous Impersonation
- Working with Confinement
- Fixtures
- Raw Syscalls
- Binary Packing
- Pointer Patching
- Lua API Reference
- Conventions
- Directory Layout
- Pseudocode Conventions
- Dictionary Integration
- External Reference Conventions
- Scope
- Self-Configuration
- Self-Configuration
- Scope
- Terminology
- Conventions
- Compatibility
- The Algorithm
- The DACL Walk
- Mandatory Integrity Control
- Restricted Tokens
- Object ACEs and Property-Level Access
- Application Confinement
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Set-Security Interface
- Credential Projection
- Syscalls
- Token Ioctls
- Inspection Interfaces
- Boot Sequence
- ABI Reference
- SID Format
- Well-Known SIDs
- SD Structure
- Resource Attributes
- Conditional ACE Bytecode Reference
- ACE Types
- SD Inheritance
- Ownership
- Conditional ACEs
- Claim Attribute Format
- Token Overview
- Token Structure
- Token Lifecycle
- Token Creation
- Token Adjustment
- Linked Tokens and Elevation
- Sessions and Revocation
- Token Access Rights
- Process Security Descriptors
- PSB Lifecycle
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Scope
- Terminology
- Conventions
- Compatibility
- The Algorithm
- The DACL Walk
- Mandatory Integrity Control
- Restricted Tokens
- Object ACEs and Property-Level Access
- Application Confinement
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Set-Security Interface
- Credential Projection
- Syscalls
- Token Ioctls
- Inspection Interfaces
- Boot Sequence
- ABI Reference
- LSM Hook Matrix
- SID Format
- Well-Known SIDs
- SD Structure
- Resource Attributes
- Conditional ACE Bytecode Reference
- ACE Types
- SD Inheritance
- Ownership
- Conditional ACEs
- Claim Attribute Format
- Token Overview
- Token Structure
- Token Lifecycle
- Token Creation
- Token Adjustment
- Linked Tokens and Elevation
- LogonSessions and Revocation
- Token Access Rights
- Process Security Descriptors
- PSB Lifecycle
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Terminology
- Conventions
- Struct Layouts
- Hives
- Layers
- Access Control
- Syscalls
- Backup Format
- Terminology
- Scope
- Terminology
- Security Model
- Bootstrap
- Service Identity
- Service Security
- Job Model
- Terminology
- How Peios Security Works
- Understanding Conditional ACEs
- User Claims, Device Claims, and Resource Attributes
- How Attribute-Based Access Control Works
- Writing Conditional ACE Expressions
- Understanding Central Access Policy
- Working with Central Access Policy
- Understanding Auditing on Peios
- Understanding Process Security
- Working with Process Security
- Understanding Linux Compatibility
- How Peios Eliminates Root
- Working with Linux Applications
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- Understanding Identity on Peios
- Inspecting a Thread's Impersonation State
- Querying Token Information (SIDs, Groups, Privileges)
- Comparing Two Tokens
- Working with Elevation
- Well-Known SIDs Reference
- What Are Security Identifiers (SIDs)
- How Tokens Work
- Understanding Logon Sessions
- Service Identities and Per-Service SIDs
- Machine Identity in a Domain
- How Linked Tokens and Elevation Work
- Inspecting a Process's Identity
- Understanding Access Control on Peios
- Reading an Object's Security Descriptor
- Setting a DACL on a File or Directory
- Using OWNER RIGHTS to Restrict or Expand Owner Access
- Understanding Why an Access Decision Was Made
- File SDs and Extended Attributes
- How Security Descriptors Work
- AccessCheck Pseudocode
- What Are Access Control Lists (DACLs and SACLs)
- How AccessCheck Evaluates Every Access Decision
- Null DACL vs Empty DACL
- Understanding Ownership and Owner Rights
- Integrity Levels Explained
- Impersonation Levels Explained
- How Identity Cascades Across Local Services
- Testing Public Accessibility with Anonymous Impersonation
- Understanding Application Confinement
- Working with Confinement
- Understanding Restricted Tokens
- Creating Restricted Tokens
- Pages and Frontmatter
- Project Structure
- Assertions and Sub-tests
- Binary Packing
- Pointer Patching
- Scope
- Terminology
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Failure Modes
- Scope
- Terminology
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Failure Modes
- Struct Layouts
- Overview
- Path Entries
- Values
- Layers
- Layer Resolution
- Transaction Semantics
- Syscalls
- Ioctls
- Error Model
- Protocol
- Operations
- Source Obligations
- Bootstrap Sequence
- Backup Format
- Command Line and Startup
- Database Schema
- Terminology
- Startup
- Shutdown
- Failure Modes
- Constants
- Overview
- KMES Consumption
- Gap Detection
- Synthetic Events
- Schema
- Boot Partitioning
- Overview
- External Reference Conventions
- Self-Configuration
- Self-Configuration
- Scope
- Terminology
- Compatibility
- AccessCheck Overview
- Central Access and Auditing Policy
- Credential Projection
- Boot Sequence
- ABI Reference
- SID Format
- Well-Known SIDs
- SD Structure
- SD Storage
- Token Structure
- Token Lifecycle
- Sessions and Revocation
- Process Security Descriptors
- Privilege Catalog
- PIP Limitations
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Scope
- Terminology
- Compatibility
- AccessCheck Overview
- Central Access and Auditing Policy
- Credential Projection
- Syscalls
- Token Ioctls
- Boot Sequence
- ABI Reference
- SID Format
- Well-Known SIDs
- SD Structure
- SD Storage
- SD Inheritance
- Token Structure
- Token Lifecycle
- Token Creation
- LogonSessions and Revocation
- Process Security Descriptors
- Privilege Catalog
- PIP Limitations
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Scope
- Hives
- Layers
- Access Control
- Watch Model
- Transaction Semantics
- Source Obligations
- Bootstrap Sequence
- Scope
- Scope
- Terminology
- Conventions
- Compatibility
- Shutdown
- Protocol
- Command Set
- Service Output Handling
- Security Model
- Registry Key Reference
- Bootstrap
- Phase 2
- Boot Modes
- Overview
- Definition Schema
- Service Identity
- Service Security
- Configuration Generations
- Pre-Exec Sequence
- Health Checks
- States and Transitions
- Transition Causes
- Restart and Reload
- Dependency Relationships
- Graph Validation and Execution
- Job Model
- Ad-Hoc Jobs
- Operation Model
- Conflict Resolution
- Timers
- Scope
- Terminology
- Prior Art
- Startup
- Shutdown
- Failure Modes
- Constants
- Overview
- Transport
- Schema
- Overview
- Transport
- Overview
- Log Queries
- Metric Queries
- Cross-Type Filtering
- Access Control Model
- Enforcement
- How Peios Security Works
- How Attribute-Based Access Control Works
- Working with Central Access Policy
- Working with Auditing
- Understanding Process Security
- Process Mitigations
- Working with Process Security
- Understanding Linux Compatibility
- How Peios Eliminates Root
- Working with Linux Applications
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- Understanding Identity on Peios
- Inspecting a Thread's Impersonation State
- Querying Token Information (SIDs, Groups, Privileges)
- Comparing Two Tokens
- Well-Known SIDs Reference
- What Are Security Identifiers (SIDs)
- How Tokens Work
- Primary Tokens vs Impersonation Tokens
- Understanding Logon Sessions
- Service Identities and Per-Service SIDs
- Machine Identity in a Domain
- Inspecting a Process's Identity
- Reading an Object's Security Descriptor
- Breaking Inheritance on an Object
- Understanding Why an Access Decision Was Made
- How AccessCheck Evaluates Every Access Decision
- Null DACL vs Empty DACL
- Understanding Mandatory Integrity Control (MIC)
- Integrity Levels Explained
- Understanding Process Integrity Protection (PIP)
- How PIP Protects Objects
- How Binary Signing Determines PIP Level
- Working with PIP Protection
- Understanding Privileges on Peios
- Privilege Reference
- Understanding Impersonation
- Impersonation Levels Explained
- How Identity Cascades Across Local Services
- Setting the Impersonation Level on a Connection
- Impersonating a Client's Identity
- Reverting to Service Identity
- Testing Public Accessibility with Anonymous Impersonation
- Understanding Application Confinement
- Understanding Restricted Tokens
- What Is Trail
- Search
- Scope
- Required Sections
- Section Numbering
- Dictionary Integration
- External Reference Conventions
- String Format
- Generation
- Self-Configuration
- Failure Modes
- Self-Configuration
- Failure Modes
- Central Access and Auditing Policy
- File SD Storage
- Token Ioctls
- Boot Sequence
- ABI Reference
- LSM Hook Matrix
- SD Structure
- Access Masks
- ACE Types
- SD Inheritance
- Conditional ACEs
- Token Structure
- Token Lifecycle
- Token Creation
- Token Access Rights
- PSB Lifecycle
- Binary Signing
- Central Access and Auditing Policy
- File SD Storage
- Token Ioctls
- Boot Sequence
- ABI Reference
- LSM Hook Matrix
- Access Masks
- ACE Types
- SD Inheritance
- Conditional ACEs
- Token Structure
- Token Lifecycle
- Token Creation
- Token Access Rights
- PSB Lifecycle
- Binary Signing
- Impersonation Lifecycle
- Scope
- Terminology
- Compatibility
- Failure Modes
- Constants
- Configuration Reference
- Overview
- Hives
- Keys
- Path Entries
- Values
- Layers
- Layer Resolution
- Deletion
- Access Control
- Watch Dispatch
- Transaction Semantics
- Interface Model
- Syscalls
- Ioctls
- Error Model
- Protocol
- Operations
- Source Obligations
- Bootstrap Sequence
- Self-Configuration
- Backup Format
- Scope
- Terminology
- Prior Art
- Command Line and Startup
- Scope
- Terminology
- Command Set
- Service Output Handling
- Security Model
- Phase 2
- Boot Modes
- Service Identity
- Dependency Relationships
- Graph Validation and Execution
- Operation Model
- Conflict Resolution
- Timers
- Scope
- Overview
- Cross-Type Filtering
- Execution
- Access Control Model
- Enforcement
- Understanding Conditional ACEs
- User Claims, Device Claims, and Resource Attributes
- How Attribute-Based Access Control Works
- How Peios Eliminates Root
- Glossary
- Understanding Identity on Peios
- How Tokens Work
- How Security Descriptors Work
- Diagrams
- Search
- Dark Mode
- SEO
- CLI Commands
- Web Board Overview
- Data Model
- meta.toml Reference
- Syscall Interface
- Constants
- Recommended Implementation Optimisations
- Syscall Interface
- Constants
- Recommended Implementation Optimisations
- AccessCheck Overview
- Central Access and Auditing Policy
- ABI Reference
- AccessCheck Overview
- Central Access and Auditing Policy
- ABI Reference
- Understanding Central Access Policy
- Working with Central Access Policy
- Scope
- Terminology
- Event Model
- Emission API
- Constants
- Recommended Implementation Optimisations
- Scope
- Terminology
- Event Model
- Emission API
- Recommended Implementation Optimisations
- Legacy Open Compatibility
- LSM Hook Matrix
- Binary Signing
- Legacy Open Compatibility
- LSM Hook Matrix
- Binary Signing
- Scope
- Terminology
- Synthetic Events
- Fixtures
- Terminology
- ABI Reference
- Access Masks
- Token Access Rights
- Terminology
- ABI Reference
- Access Masks
- Token Access Rights
- Constants
- Access Control
- Understanding Process Security
- Glossary
- File Access Rights Reference
- AccessCheck Pseudocode
- Understanding Access Masks and Rights
- Understanding Ownership and Owner Rights
- Terminology
- Compatibility
- AccessCheck Overview
- The Algorithm
- Mandatory Integrity Control
- Application Confinement
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- File SD Storage
- The Set-Security Interface
- Syscalls
- LSM Blob Layouts
- ABI Reference
- SD Structure
- Resource Attributes
- Conditional ACE Bytecode Reference
- ACL Format
- Access Masks
- ACE Types
- ACE Ordering
- SD Inheritance
- Conditional ACEs
- Token Lifecycle
- Privilege Model
- Privilege Catalog
- Process Protection
- Terminology
- Compatibility
- AccessCheck Overview
- The Algorithm
- Mandatory Integrity Control
- Application Confinement
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- KACS-Native Open
- File SD Storage
- The Set-Security Interface
- Syscalls
- LSM Blob Layouts
- ABI Reference
- SD Structure
- Resource Attributes
- Conditional ACE Bytecode Reference
- ACL Format
- Access Masks
- ACE Types
- ACE Ordering
- SD Inheritance
- Conditional ACEs
- Token Lifecycle
- Process Security Descriptors
- Privilege Model
- Privilege Catalog
- Process Protection
- Terminology
- Access Control
- Ioctls
- Terminology
- Access Control Model
- Enforcement
- How Peios Security Works
- Understanding Conditional ACEs
- User Claims, Device Claims, and Resource Attributes
- How Attribute-Based Access Control Works
- Understanding Central Access Policy
- Working with Central Access Policy
- Understanding Auditing on Peios
- Working with Auditing
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- Troubleshooting Common Issues
- Understanding Access Control on Peios
- Reading an Object's Security Descriptor
- How Security Descriptors Work
- AccessCheck Pseudocode
- What Are Access Control Lists (DACLs and SACLs)
- How AccessCheck Evaluates Every Access Decision
- Understanding Access Masks and Rights
- Null DACL vs Empty DACL
- Understanding Mandatory Integrity Control (MIC)
- Setting and Changing Mandatory Labels
- Understanding Process Integrity Protection (PIP)
- How PIP Protects Objects
- Working with PIP Protection
- Understanding Privileges on Peios
- Privilege Reference
- Understanding Application Confinement
- Terminology
- LSM Blob Layouts
- Inspection Interfaces
- ABI Reference
- Kernel Patches
- Token Overview
- Token Lifecycle
- PSB Overview
- Terminology
- LSM Blob Layouts
- Inspection Interfaces
- ABI Reference
- Kernel Patches
- Well-Known SIDs
- Token Overview
- Token Lifecycle
- PSB Overview
- Overview
- Understanding Logon Sessions
- How Linked Tokens and Elevation Work
- AccessCheck Pseudocode
- Integrity Levels Explained
- What Is Cairn
- Quick Start
- Project Structure
- CLI Commands
- Web Board Overview
- Data Model
- meta.toml Reference
- Metadata
- Informative Text
- Changelog Format
- Syscall Interface
- Self-Configuration
- Scope
- Terminology
- Event Model
- Syscall Interface
- Self-Configuration
- Scope
- Terminology
- Conventions
- Compatibility
- AccessCheck Overview
- The Algorithm
- The DACL Walk
- Mandatory Integrity Control
- Restricted Tokens
- Object ACEs and Property-Level Access
- Application Confinement
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Handle Model
- The Set-Security Interface
- Credential Projection
- DAC Neutralization
- setuid Behaviour
- Syscalls
- Token Ioctls
- LSM Blob Layouts
- Inspection Interfaces
- Boot Sequence
- ABI Reference
- LSM Hook Matrix
- Kernel Patches
- SID Format
- Well-Known SIDs
- SD Structure
- Conditional ACE Bytecode Reference
- SD Storage
- Access Masks
- ACE Types
- SD Inheritance
- Ownership
- Conditional ACEs
- Claim Attribute Format
- Token Overview
- Token Structure
- Token Lifecycle
- Token Creation
- Token Adjustment
- Linked Tokens and Elevation
- Sessions and Revocation
- Token Access Rights
- PSB Overview
- Process Security Descriptors
- PSB Lifecycle
- Privilege Model
- Privilege Catalog
- Process Protection
- Enforcement Points
- PIP Limitations
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Scope
- Terminology
- Conventions
- Compatibility
- AccessCheck Overview
- The Algorithm
- The DACL Walk
- Mandatory Integrity Control
- Restricted Tokens
- Object ACEs and Property-Level Access
- Application Confinement
- PIP in AccessCheck
- Central Access and Auditing Policy
- Auditing in AccessCheck
- The Handle Model
- The Set-Security Interface
- Credential Projection
- DAC Neutralization
- setuid Behaviour
- Syscalls
- Token Ioctls
- LSM Blob Layouts
- Inspection Interfaces
- Boot Sequence
- ABI Reference
- LSM Hook Matrix
- Kernel Patches
- SID Format
- Well-Known SIDs
- SD Structure
- Conditional ACE Bytecode Reference
- SD Storage
- Access Masks
- ACE Types
- SD Inheritance
- Ownership
- Conditional ACEs
- Claim Attribute Format
- Token Overview
- Token Structure
- Token Lifecycle
- Token Creation
- Token Adjustment
- Linked Tokens and Elevation
- LogonSessions and Revocation
- Token Access Rights
- PSB Overview
- Process Security Descriptors
- PSB Lifecycle
- Privilege Model
- Privilege Catalog
- Process Protection
- Enforcement Points
- PIP Limitations
- Impersonation Levels
- Impersonation Gates
- Impersonation Lifecycle
- Terminology
- Overview
- Hives
- Layers
- Access Control
- Interface Model
- Syscalls
- Ioctls
- Protocol
- Bootstrap Sequence
- Terminology
- Command Line and Startup
- Scope
- Terminology
- Compatibility
- Protocol
- Security Model
- Bootstrap
- Phase 2
- Overview
- Definition Schema
- Service Identity
- Service Security
- Configuration Generations
- Pre-Exec Sequence
- Health Checks
- States and Transitions
- Transition Causes
- Job Model
- Ad-Hoc Jobs
- Terminology
- Prior Art
- Startup
- Constants
- KMES Consumption
- Schema
- Execution
- Access Control Model
- Enforcement
- How Peios Security Works
- Understanding Conditional ACEs
- User Claims, Device Claims, and Resource Attributes
- Writing Conditional ACE Expressions
- Understanding Auditing on Peios
- Working with Auditing
- Understanding Process Security
- Working with Process Security
- Understanding Linux Compatibility
- How Peios Eliminates Root
- Working with Linux Applications
- Glossary
- Frequently Asked Questions
- Troubleshooting Access Denied Errors
- Troubleshooting Common Issues
- Understanding Identity on Peios
- Inspecting a Thread's Impersonation State
- Querying Token Information (SIDs, Groups, Privileges)
- Comparing Two Tokens
- Working with Elevation
- Well-Known SIDs Reference
- What Are Security Identifiers (SIDs)
- How Tokens Work
- Primary Tokens vs Impersonation Tokens
- Understanding Logon Sessions
- Service Identities and Per-Service SIDs
- Machine Identity in a Domain
- How Linked Tokens and Elevation Work
- Inspecting a Process's Identity
- Understanding Access Control on Peios
- Transferring Ownership of an Object
- Understanding Why an Access Decision Was Made
- File SDs and Extended Attributes
- The Check-at-Open Model
- How Security Descriptors Work
- AccessCheck Pseudocode
- How AccessCheck Evaluates Every Access Decision
- Understanding Access Masks and Rights
- Null DACL vs Empty DACL
- Understanding Ownership and Owner Rights
- Understanding Mandatory Integrity Control (MIC)
- Integrity Levels Explained
- Understanding Process Integrity Protection (PIP)
- How Binary Signing Determines PIP Level
- Working with PIP Protection
- Understanding Privileges on Peios
- Managing Privileges
- Privilege Reference
- Understanding Impersonation
- Impersonation Levels Explained
- How Identity Cascades Across Local Services
- Impersonating a Client's Identity
- Reverting to Service Identity
- Testing Public Accessibility with Anonymous Impersonation
- Understanding Application Confinement
- Working with Confinement
- Understanding Restricted Tokens
- Creating Restricted Tokens
- Project Structure
- Pages and Frontmatter
- Pathways
- Inter-Page Links
- Code Blocks
- Frontmatter Reference
- Assertions and Sub-tests
- Fixtures
- Workers
- Ioctl
- CLI Reference
- Scope
- Terminology
- Directory Layout
- Version Numbers
- Lifecycle States
- Metadata
- Cross-Reference Validation
- Dictionary Integration
- The Algorithm
- Syscalls
- The Algorithm
- Syscalls
- Enforcement
- Understanding Auditing on Peios
- Machine Identity in a Domain
- What Is Trail
- Quick Start
- Project Structure
- Pages and Frontmatter
- Pathways
- Admonitions
- Tab Groups
- Diagrams
- Inter-Page Links
- Code Blocks
- trail.toml Reference
- Multi-Product Mode
- Navigation and Theming
- Search
- Dark Mode
- Dev Server
- SEO
- CLI Reference
- Frontmatter Reference
- Built-in Templates
- Scope
- Terminology
- Failure Modes
- Constants
- Struct Layouts
- RSI Wire Format
- Configuration Reference
- Overview
- Layers
- Deletion
- Watch Model
- Watch Dispatch
- Transaction Semantics
- Interface Model
- Syscalls
- Ioctls
- Error Model
- Protocol
- Operations
- Source Obligations
- Self-Configuration
- Backup Format
- Scope
- Command Line and Startup
- Concurrency Model
- Request Handling
- Terminology
- Shutdown
- Failure Modes
- Configuration Keys
- Overview
- Batch Writer
- Retention
- Log Writer
- Retention
- Retention
- Terminology
- setuid Behaviour
- Well-Known SIDs
- Token Lifecycle
- Token Creation
- Binary Signing
- Privilege Model
- Privilege Catalog
- Terminology
- The Set-Security Interface
- setuid Behaviour
- Token Ioctls
- Well-Known SIDs
- Token Lifecycle
- Token Creation
- Binary Signing
- Privilege Model
- Privilege Catalog
- PIP Limitations
- Terminology
- Source Obligations
- Terminology
- Terminology
- Security Model
- Boot Modes
- Graph Validation and Execution
- Process Mitigations
- Understanding Linux Compatibility
- Privilege Reference
- Metadata
- Required Sections
- Pseudocode Conventions
- Dictionary Integration
- Scope
- Terminology
- Conventions
- Prior Art
- Binary Format
- String Format
- Binary Format
- Allocation
- Terminology
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Constants
- Terminology
- Conventions
- Event Model
- Emission API
- Syscall Interface
- Ring Buffer
- Self-Configuration
- Constants
- Conventions
- Compatibility
- AccessCheck Overview
- Mandatory Integrity Control
- PIP in AccessCheck
- KACS-Native Open
- The Set-Security Interface
- Credential Projection
- setuid Behaviour
- Syscalls
- Token Ioctls
- ABI Reference
- Build Configuration
- SID Format
- Well-Known SIDs
- SD Structure
- Resource Attributes
- Conditional ACE Bytecode Reference
- SD Storage
- Access Masks
- ACE Types
- SD Inheritance
- Ownership
- Conditional ACEs
- Claim Attribute Format
- Token Structure
- Token Access Rights
- PSB Fields
- Process Security Descriptors
- PSB Lifecycle
- Binary Signing
- Process Protection
- Impersonation Lifecycle
- Conventions
- Compatibility
- AccessCheck Overview
- Mandatory Integrity Control
- PIP in AccessCheck
- KACS-Native Open
- The Set-Security Interface
- Credential Projection
- setuid Behaviour
- Syscalls
- Token Ioctls
- ABI Reference
- Build Configuration
- SID Format
- Well-Known SIDs
- SD Structure
- Resource Attributes
- Conditional ACE Bytecode Reference
- SD Storage
- Access Masks
- ACE Types
- SD Inheritance
- Ownership
- Conditional ACEs
- Claim Attribute Format
- Token Structure
- Token Lifecycle
- Token Access Rights
- PSB Fields
- Process Security Descriptors
- PSB Lifecycle
- Binary Signing
- Process Protection
- Impersonation Lifecycle
- Scope
- Terminology
- Conventions
- Compatibility
- Failure Modes
- Constants
- Struct Layouts
- RSI Wire Format
- Configuration Reference
- Overview
- Keys
- Path Entries
- Values
- Layers
- Layer Resolution
- Deletion
- Access Control
- Watch Model
- Watch Dispatch
- Transaction Semantics
- Interface Model
- Ioctls
- Error Model
- Protocol
- Operations
- Source Obligations
- Bootstrap Sequence
- Self-Configuration
- Backup Format
- Terminology
- Prior Art
- Command Line and Startup
- Database Schema
- Request Handling
- Conventions
- Compatibility
- Protocol
- Registry Key Reference
- Bootstrap
- Definition Schema
- Service Identity
- Service Security
- Configuration Generations
- Pre-Exec Sequence
- Restart and Reload
- Ad-Hoc Jobs
- Timers
- Terminology
- Startup
- Configuration Keys
- Constants
- KMES Consumption
- Storage Sharding
- Synthetic Events
- Schema
- Schema
- Database Lifecycle
- Overview
- Transport
- Schema
- Database Lifecycle
- Adaptive Rollups
- Overview
- Event Queries
- Metric Queries
- Execution
- Streaming
- Transport
- Access Control Model
- Understanding Conditional ACEs
- User Claims, Device Claims, and Resource Attributes
- Understanding Linux Compatibility
- Working with Linux Applications
- Glossary
- Troubleshooting Common Issues
- Understanding Identity on Peios
- Comparing Two Tokens
- What Are Security Identifiers (SIDs)
- Understanding Access Control on Peios
- Reading an Object's Security Descriptor
- AccessCheck Pseudocode
- Understanding Access Masks and Rights
- How SD Inheritance Works
- How Identity Cascades Across Local Services
- Quick Start
- Pages and Frontmatter
- trail.toml Reference
- Multi-Product Mode
- Navigation and Theming
- Search
- Dark Mode
- SEO
- Frontmatter Reference
- Quick Start
- Running Commands
- Assertions and Sub-tests
- Workers
- Raw Syscalls
- Ioctl
- Binary Packing
- Pointer Patching
- Wire Protocol
- Snapshots and Fixtures
- Lua API Reference
- What Is Cairn
- CLI Commands
- Data Model
- meta.toml Reference
- Self-Configuration
- Failure Modes
- Self-Configuration
- Failure Modes
- Terminology
- Failure Modes
- Constants
- Struct Layouts
- Configuration Reference
- Overview
- Path Entries
- Layers
- Access Control
- Watch Model
- Watch Dispatch
- Transaction Semantics
- Interface Model
- Ioctls
- Bootstrap Sequence
- Self-Configuration
- Terminology
- Terminology
- Startup
- Shutdown
- Failure Modes
- Configuration Keys
- Storage Sharding
- Streaming
- Enforcement
- Restricted Tokens
- Object ACEs and Property-Level Access
- SD Inheritance
- Token Lifecycle
- Restricted Tokens
- Object ACEs and Property-Level Access
- SD Inheritance
- Token Lifecycle
- Well-Known SIDs Reference
- What Are Security Identifiers (SIDs)
- Using OWNER RIGHTS to Restrict or Expand Owner Access
- Understanding Application Confinement