Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add configuration option to ignore users_in_public_rooms when searching the User Directory #17801

Open
otech47 opened this issue Oct 7, 2024 · 0 comments

Comments

@otech47
Copy link

otech47 commented Oct 7, 2024

Description:

Hi I have a use case for an app that integrates the matrix-rust-sdk as well as this synapse server implementation

We are using public rooms to create a UX where you can share a QR Code that others can scan to join the room

However privacy is a paramount priority and we also are currently accepting the unfortunate side effect that users get added to the users_in_public_rooms table. This is not ideal because we want users to be able to:

  • search for other users by full matrix ID
  • search for other users by display name ONLY if they share private rooms

since we are accepting the side effect, that means users can search by display name and see additional results -- any users who have joined a public room

Our first approach to solve this is to truncate the users_in_public_rooms table constantly (every ~5 mins or so) since we have no need for any other functionality associated with that table

We also were considering forking and adding a change server-side where we would simply skip the check to users_in_public_rooms in the search API and never returns results inside that table. Alternatively we could avoid ever writing to that table at all when users join public rooms which would be more efficient.

If we were to upstream these changes to this repo, would any of the ideas suggested above be acceptable to the maintainers assuming it were behind a non-default configuration option? For example ignore_users_in_public_rooms

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant