Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

"Event not signed by authorising server" when trying to change nickname/avatar in a space-restricted room #10920

Closed
chayleaf opened this issue Sep 25, 2021 · 6 comments · Fixed by #10933
Assignees
Labels
S-Minor Blocks non-critical functionality, workarounds exist. T-Defect Bugs, crashes, hangs, security vulnerabilities, or other reported issues.

Comments

@chayleaf
Copy link

Description

I host a homeserver, it has a room with version 9 set to only allow joining for space members, it's upgraded from an old room of version 6. My friend uses the official homeserver, and when he tries to change his per-room avatar it says "Event not signed by authorising server". I am able to reproduce it as well.

Steps to reproduce

  • create a room with space-restricted membership
  • join the room with an account on a different homeserver
  • try to use /myroomavatar or /myroomnick

Version information

  • Homeserver: matrix.org and my own (I tested on both)
@chayleaf chayleaf changed the title "Event not signed by authorising server" when trying to change nickname/avatar in a room "Event not signed by authorising server" when trying to change nickname/avatar in a space-restricted room Sep 25, 2021
@erikjohnston erikjohnston added S-Major Major functionality / product severely impaired, no satisfactory workaround. T-Defect Bugs, crashes, hangs, security vulnerabilities, or other reported issues. labels Sep 27, 2021
@clokep
Copy link
Member

clokep commented Sep 27, 2021

Hm, those checks shouldn't be being applied if the user's previous membership was join! I'll take a look.

@clokep clokep added S-Minor Blocks non-critical functionality, workarounds exist. and removed S-Major Major functionality / product severely impaired, no satisfactory workaround. labels Sep 27, 2021
@clokep
Copy link
Member

clokep commented Sep 27, 2021

We have a complement test for re-joining the same room (and ensuring it works), but it really should just be sending an updated m.room.member event, which is what Element Web does. Note that they also copy the entire previous event and add to it. I think that's probably fine and the server should handle this OK, but not 100% sure.

@chayleaf
Copy link
Author

chayleaf commented Sep 27, 2021

fwiw the steps i listed seem to work no matter the join order, i'm not familiar enough with the synapse codebase to know if that means anything, but just note that it should be fairly easy to reproduce for you as well to check if it's fixed

edit: i guess element could actually send a broken m.member event for /myroomavatar, if the .member event needs signing based on its content now? in which case i should report it to them instead

@clokep
Copy link
Member

clokep commented Sep 27, 2021

I was able to reproduce, I think what Element Web is doing is fine. The logic is a bit torturous though so haven't solved it yet!

@clokep
Copy link
Member

clokep commented Sep 28, 2021

Note that #10933 should fix this.

@clokep clokep self-assigned this Sep 29, 2021
@clokep
Copy link
Member

clokep commented Sep 30, 2021

Unfortunately the fix just missed Synapse 1.44.0, so will be in 1.45.0. Thanks so much for the detailed report with steps to reproduce! 🎉

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
S-Minor Blocks non-critical functionality, workarounds exist. T-Defect Bugs, crashes, hangs, security vulnerabilities, or other reported issues.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants