Enforcement Coverage and Limitations
This page states precisely what APF governs in this release, so you can decide where you need other controls. Everything here reflects the main branch of the repository.
What APF Governs
What APF Does Not Govern
Bypass Prevention
APF’s decisions bind only traffic that passes through it. These controls keep an agent from going around it:
- OpenShell mediates all egress. The sandbox’s only network path is through OpenShell’s supervisor, which enforces the projected network policy and calls APF for routed hosts.
- Source policy cannot be changed outside a bundle. The interceptor denies direct edits, agent-authored proposals, draft approvals, and unmanaged providers and profiles, and agent policy proposals must stay disabled in OpenShell. Provider attachment is not governed, as listed above.
- Admission fails closed. A sandbox cannot start without the signed policy and valid provenance.
- Credentials come last. OpenShell injects credentials only after APF’s decision, so a request APF denies never carries a credential, and APF never holds one.
- Callers are authenticated. In authenticated mode, only OpenShell’s gateway and the bound sandbox supervisor can call APF’s listeners.
Middleware Ordering
APF decides on the request body it receives. If another middleware that transforms bodies runs after APF on the same host, the request that leaves can differ from the one APF approved. OpenShell runs middleware in ascending order. Give APF’s entry the highest order among middleware that transform bodies on the same hosts, or do not combine them.
Next Steps
- To close the gaps you can close today, refer to Security Best Practices.
- For the status of each capability, refer to Support and Compatibility.