feat(#551): gate server-side e2ee behind opt-in matrix.allowEncryption (default off)
This commit is contained in:
parent
a6dd6d5dd8
commit
8792db9424
2 changed files with 32 additions and 4 deletions
|
|
@ -119,9 +119,16 @@ Initial rollout settings:
|
|||
engage). The absent
|
||||
`yes_i_am_very_very_sure_…_open_registration_…` flag keeps the
|
||||
server closed to anyone without the token.
|
||||
- `allow_encryption = true` — E2EE enabled. Agent clients use the
|
||||
`e2e-encryption` feature of `matrix-sdk`; crypto keys are stored in
|
||||
the per-agent sqlite store under the state dir and persist across
|
||||
- `allow_encryption` — server-side E2EE switch, sourced from
|
||||
`services.hyperhive.matrix.allowEncryption` (**default `false`**, opt-in).
|
||||
Off by default because on the hive-internal homeserver the operator
|
||||
already controls the transport; turn it on for encrypted rooms on
|
||||
external / federated homeservers or to keep contents opaque to the
|
||||
homeserver admin. **The agent matrix client always supports decryption
|
||||
regardless of this flag** — it uses the `e2e-encryption` feature of
|
||||
`matrix-sdk` so it can read encrypted rooms it is invited to even when
|
||||
this homeserver doesn't permit room encryption. Crypto keys are stored
|
||||
in the per-agent sqlite store under the state dir and persist across
|
||||
restarts (lost on `--purge`). `read_room` decrypts via
|
||||
`room.messages()` — UTD events surface as `event_type =
|
||||
"m.room.encrypted"` with `body = "[unable to decrypt]"`.
|
||||
|
|
|
|||
Loading…
Reference in a new issue