matrix-org / matrix-org/matrix-spec

Allow server-side enforcement of `event_id_only`

Open
#1,365 0 comments 3 reactions 0 assignees View on GitHub
improvement
Dominant language
HTML
Stars
330
Forks
150
Avg merge
2h 21m
Merged PRs (30d)
3

Description

> As a server administrator running a Synapse instance (or any other Matrix server) in the EU I need to comply to EU regulations which for example includes GDPR. Therefore sending the name of my users to - for example - Apple or Google servers or push-gateways is not acceptable as it transmits personal data.

In order to solve this, a way to enforce `event_id_only` on server-side would be useful to prevent **any** information (message content, user-id (`@firstname:my.server`), user name (`Firstname Lastname`)) to other servers. Purely sending IDs not being able to be connected to users or identity information without having a login to `my.server` **should** allow full compliance to regulations.

From the original issue at matrix-org/synapse: As this will override the client-side setting it might introduce issues with some clients when just enforced on server-side. Therefore there needs to be a proper way to communicate this on protocol level to inform clients the server is enforcing this and the client needs to follow the implementation as if it was requesting `event_id_only`.

**References:**
- follow-up of https://github.com/matrix-org/synapse/issues/14569
- relates to https://github.com/matrix-org/matrix-spec/issues/342

Contributor guide

Open the contributing guide

Research direction

Start by reading the referenced Synapse issue 14569 and Matrix specification issue 342, then identify the protocol area governing event_id_only and client/server capability communication. Done means the specification defines how a server enforces event_id_only and how clients are informed to follow that behavior.

Written by the indexing model from the issue text.

Assessment

Domain
api, backend-api-design
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.