!vxTmkuJzhGPsMdkAOc:transformierende-gesellschaft.org

NixOS Matrix Subsystem

161 Members
Coordination and discussion about the matrix subsystem in NixOS - https://wiki.nixos.org/wiki/Matrix82 Servers

Load older messages


SenderMessageTime
18 Feb 2022
@hexa:lossy.networkhexamore input welcome22:57:56
@hexa:lossy.networkhexa * more input very welcome22:57:58
@f0x:pixie.townf0xadded some more assertions23:43:07
@f0x:pixie.townf0xI think it would be great to support both option designs, perhaps make them mutually exclusive though23:44:23
@f0x:pixie.townf0xwe would also need some way of handling the load balancing considerations when having multiple sync or federationReceiver workers23:46:46
@f0x:pixie.townf0x im considering writing some kind of proxy to handle the access token parsing for efficient /sync loadbalancing, because doing that in pure nginx became impossible with the new temporary tokens afaik 23:52:57
@f0x:pixie.townf0xhttps://github.com/sandhose/matrix-doc/blob/sandhose/msc/refresh-token/proposals/2918-refreshtokens.md these are entirely opaque whereas the old (long) access tokens actually encoded the MXID23:57:27
@f0x:pixie.townf0xso you would need to do an http request or database access to figure out who the token is for23:57:41
19 Feb 2022
@hexa:lossy.networkhexa
In reply to @f0x:pixie.town
we would also need some way of handling the load balancing considerations when having multiple sync or federationReceiver workers
ideally yes, but until that is possible we should resort to simpler measure, like hashing the src address of incoming requests
01:07:27
@f0x:pixie.townf0xoh that's pretty good actually01:08:17
@hexa:lossy.networkhexaalso I think there was something proxy-adjacent linked recently, I think by sorunome?01:09:37
@hexa:lossy.networkhexahttps://github.com/Sorunome/matrix-synchrotron-balancer01:09:43
@hexa:lossy.networkhexathough that looks dated?01:09:46
@dandellion:dodsorf.asDandellionits old and uses the trick with usernames in AS tokens IIRC01:09:59
@hexa:lossy.networkhexaso no good01:10:31
@f0x:pixie.townf0x
In reply to @dandellion:dodsorf.as
its old and uses the trick with usernames in AS tokens IIRC
it does use a whoami request so should still work
01:12:04
@f0x:pixie.townf0xmaybe other parts changed though01:12:33
@f0x:pixie.townf0xusing a hash of the authorization header could work too?01:12:52
@dandellion:dodsorf.asDandellionhuh you're right01:13:11
@hexa:lossy.networkhexayeah, so how do you access that in nginx?01:16:07
@f0x:pixie.townf0x$http_Authorization apparently01:17:51
@hexa:lossy.networkhexaneat01:17:58
@hexa:lossy.networkhexa so it's just hash $http_Authorization and we'd be good? 01:18:30
@f0x:pixie.townf0xi have no idea but it's worth a try :P01:18:55
@hexa:lossy.networkhexaso I wonder, you're saying that ideally we'd support both01:21:05
@hexa:lossy.networkhexabut what would you people actually be using if both were available?01:21:16
@dandellion:dodsorf.asDandellionsince the same data needs to be synced to all devices, currently it makes more sense let the workers cache things by username and not device01:22:07
@dandellion:dodsorf.asDandellionI don't think it actually matters for anything but the largest installations01:22:29
@hexa:lossy.networkhexaso we have two means to get the user, by IP or by Authorization header01:22:45
@hexa:lossy.networkhexa * so we have two means to get the device, by IP or by Authorization header01:22:53

Show newer messages


Back to Room ListRoom Version: 4