These docs are under active development and cover the v0.20 Kobicha security model.

Access control

Concept
Understanding Access Control on Peios

Every secured object carries a security descriptor evaluated by a single function — AccessCheck.

Concept
How Security Descriptors Work

The structure of a security descriptor — owner, group, DACL, and SACL — and how objects receive one.

Concept
What Are Access Control Lists (DACLs and SACLs)

DACLs control who can access an object, SACLs control auditing and integrity policy.

Concept
How AccessCheck Evaluates Every Access Decision

The single function that evaluates every access decision — from file opens to signal delivery.

Concept
Understanding Access Masks and Rights

How the 32-bit access mask encodes specific, standard, and generic rights for every object type.

Concept
How ACE Ordering Affects Access Decisions

Why the order of ACEs in a DACL determines the outcome, and the canonical ordering rules.

Concept
Null DACL vs Empty DACL

A null DACL grants all access to everyone; an empty DACL denies all access — opposite meanings.

Concept
Understanding Ownership and Owner Rights

What the owner SID grants by default, how OWNER RIGHTS overrides it, and how ownership is transferred.

Concept
How SD Inheritance Works

How ACEs propagate from parent directories to children using CI, OI, NP, and IO inheritance flags.

How-to
Reading an Object's Security Descriptor

How to use sd show to inspect the owner, group, DACL, and SACL on files, registry keys, and processes.

How-to
Setting a DACL on a File or Directory

How to use sd set to replace explicit ACEs on an object while preserving inherited ACEs.

How-to
Adding Allow and Deny Rules

How to add and remove individual allow and deny ACEs from an existing DACL using sd add and sd remove.

How-to
Breaking Inheritance on an Object

How to disconnect an object from its parent's DACL by breaking, clearing, or re-enabling inheritance.

How-to
Transferring Ownership of an Object

How to view, transfer, or take ownership of an object, and the recovery path for locked-out objects.

How-to
Using OWNER RIGHTS to Restrict or Expand Owner Access

How to use the OWNER RIGHTS ACE (S-1-3-4) to override the default rights granted to an object's owner.

How-to
Understanding Why an Access Decision Was Made

How to use sd explain to trace each stage of an AccessCheck evaluation and diagnose access problems.

Concept
File SDs and Extended Attributes

How file and directory security descriptors are stored as filesystem extended attributes.

Concept
The Check-at-Open Model

Access is evaluated once at file open and the granted rights are cached on the handle for its lifetime.

How-to
File Access Rights Reference

Reference table of file and directory specific rights, standard rights, and generic-to-specific mappings.

Concept
AccessCheck Pseudocode

The complete AccessCheck evaluation algorithm — every function, every step, no omissions.