aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/access.md15
1 files changed, 13 insertions, 2 deletions
diff --git a/docs/access.md b/docs/access.md
index 042e0d5..b9e0296 100644
--- a/docs/access.md
+++ b/docs/access.md
@@ -88,5 +88,16 @@ curl -u alice --request PUT --header 'Content-Type: application/json' \
```
From that write on, every node serves only the users the registry has, so the first
-entry must be the writer's own, with `["_continuum"]`, or nobody may change the
-registry again; add the other users the same way.
+entry must be the writer's own, with `["_continuum"]` (a first write that isn't is
+refused, `409`); add the other users the same way.
+
+## Keeping the swarm manageable
+
+A user may not lock itself out: a write that would keep its writer from managing users
+(enabled, with `write` on `_continuum/users`) when it could, deleting, disabling or
+narrowing its own entry, is refused (`409`), and nothing of it is written; so is one
+that would remove the registry (`_continuum/users`). Others are not kept from removing
+the last user who may manage users: each node can only judge what it holds, and two
+such writes on two nodes at once would leave nobody once they merge anyway. Then,
+while nobody may manage users, the users in a node's `--protocol-writers` may do
+everything there again, to set it right.