diff --git a/README.md b/README.md index 98170e0..ffc0756 100644 --- a/README.md +++ b/README.md @@ -98,9 +98,9 @@ monky-deployd version ## Security model - **Identity = the box's ziti host identity.** Only identities with `#monky-deploy-agent` can dial - tenancy's agent entrypoint; `#openbao-client` reaches OpenBao — the broker does not add either - attr yet (ADR-0028 addendum; see PROTOCOL.md §Where and how), so today an operator adds them on - the controller after enrolment. The agent reads the identity + tenancy's agent entrypoint; `#openbao-client` reaches OpenBao — tenancy sends both to the broker + as `host_extra_attrs` at register (monky-tenancy !29 / monky-ziti `ac258352`, 2026-09-07), so a + backend registered since then dials without hand-added attrs (see PROTOCOL.md §Where and how). The agent reads the identity through an ACL (`setfacl -m u:monky-deployd:r`), never owns it. - **The bearer to tenancy is the agent's own OpenBao token**, minted by OpenBao from a tenancy-signed ES256 deploy grant (`aud openbao-see-env`, `kind deploy-grant`, 1 h; its `jti` diff --git a/docs/PROTOCOL.md b/docs/PROTOCOL.md index 7c372a4..35e89f0 100644 --- a/docs/PROTOCOL.md +++ b/docs/PROTOCOL.md @@ -15,11 +15,10 @@ The agent side of the backend lifecycle agent protocol — [MONKY-ADR-0028](http `state/overlay/configs.json` — the authority for the port); the sidecar's `host.v1` forwards to `127.0.0.1:8081` inside the pod. `tenancy.port` in the config, `install.sh` and the ansible role all default to 443 (0.1.5). Only host identities carrying `#monky-deploy-agent` may dial - (`monky.tenancy.deploy.dial`, openziti). Adding that attr (and `#openbao-client`) to - `monky-host.` at kit reveal is the ADR-0028 addendum and is **not implemented in monky-ziti - yet** (its host template `app/fabric.py` `host_identity_attrs` does not carry it; openziti - `docs/services.md` §Platform services records when it does) — until then an operator adds both - attrs on the controller by hand after enrolment. + (`monky.tenancy.deploy.dial`, openziti). Tenancy sends that attr and `#openbao-client` to the + broker as `host_extra_attrs` when it registers an agent-backed backend (monky-tenancy !29, + monky-ziti `ac258352` — both 2026-09-07), so `monky-host.` carries them from creation; + identities created before that (env-qa-02's) had them added on the controller by hand. - **Transport:** plain HTTP inside the mesh (`transport: sdk` dials by service name; `proxy` → `127.0.0.1:18443`). OpenBao is the existing `openbao` ziti service (`#openbao-client`), dialled as `https://bao.cbs.tikali.net:8200` (an intercept name), TLS validated against the