Technology
Permissions
Permissions specify which operations a capability authorises, such as loading data, storing data or executing code.
Why it matters
Permissions support least authority by allowing software to share access without granting every possible use of the memory.
In brief
Permissions specify which operations a capability authorises, such as loading data, storing data or executing code. The processor checks the requested operation against those permissions as well as validity and bounds.
Key considerations
1. Separate operations
Use read-only, write-only where available, or execute authority according to the interface rather than convenience.
2. Reduce
Derived capabilities may have permissions removed but cannot legitimately regain them.
3. Review
Treat permission grants as part of API and compartment design, with tests for denied operations.
Evidence and caveats
Permission bits do not understand application meaning. Write access to the wrong object can still be harmful even if technically authorised.
Use the exact architecture and software specification implemented by the target. Separate architectural guarantees from system-level outcomes.