Föderation

TUmatrix unterstützt als Teil der Matrix-Plattform Föderation. Dieses Feature ermöglicht es, mit Personen von anderen Universitäten zu kommunizieren, wenn diese auch Matrix verwenden.

Da es bei Matrix Instanzen Dritter keine Kontrollmöglichkeiten seitens der TU Wien gibt, auf wessen Servern die Inhalte der synchronisierten Räume gespeichert werden und wer serverseitig darauf zugreifen kann, empfehlen wir bei föderierten Räumen immer Ende-zu-Ende Verschlüsselung zu aktivieren

Funktionsweise

Begriffserklärung:

  • Matrix: Eine offene Chat-Plattform bzw. das dazugehörige Protokoll
  • Server/Instanz: Ein einzelner Chat-Server, der auf Matrix basiert
  • TUmatrix: Die Matrix Instanz der TU Wien

Im Matrix Netzwerk gibt es viele eigenständige Server (=Instanzen). TUmatrix ist einer davon. Solange man nur mit Personen von der eigenen Universität kommuniziert verhält sich Matrix so wie jeder andere Messenger.

Doch Matrix ermöglicht es auch, mit Personen von anderen Matrix Instanzen zu kommunizieren. Es ist möglich, in einen Chatraum Personen von anderen Instanzen einzuladen.

Dazu benötigt man die Matrix-ID der anderen Person in der Form @username:server.url

TUmatrix kontaktiert dafür die Matrix Instanz der externen Person (z.B. uibk.ac.at oder matrix.org) und instruiert diese, eine Kopie des Raumes auf deren Instanz abzulegen. Solange eine Person von einer anderen Instanz in dem Raum ist, wird der Raum auf dessen Instanz synchronisiert.

Einladung

  1. User @user1:tuwien.ac.at erstellt einen Raum #geteilter_raum.
  2. User @user1:tuwien.ac.at ladet @user2:uibk.ac.at ein.
  3. Server tuwien.ac.at kontaktiert uibk.ac.at und teilt ihm mit, dass eine Einladung für @user2:uibk.ac.at erfolgt ist.
  4. User @user2:uibk.ac.at sieht die Einladung.
  5. User @user2:uibk.ac.at nimmt die Einladung an.
  6. Server uibk.ac.at beantragt den Inhalt des Raumes #geteilter_raum bei tuwien.ac.at.
  7. Die Server synchronisieren den Inhalt des Raumes und speichern ihn auf beiden Seiten

Nachrichten schreiben

  1. User @user1:tuwien.ac.at schreibt eine Nachricht im Raum #geteilter_raum.
  2. Server tuwien.ac.at kontaktiert uibk.ac.at und teilt ihm mit, dass eine neue Nachricht zur Verfügung steht.
  3. Server uibk.ac.at speichert die Nachricht in seiner Datenbank.
  4. Server uibk.ac.at zeigt die Nachricht @user2:uibk.ac.at.
  5. Server uibk.ac.at schickt die Lesebestätigung von @user2:uibk.ac.at an tuwien.ac.at.
  6. Server tuwien.ac.at schickt User @user1:tuwien.ac.at die Lesebestätigung.


Föderierte Räume funktionieren genauso wie normale Räume und unterstützen somit Kommunikation mit z.B. anderen Universitäten.

Jeder User-Account ist immer mit genau einer Instanz verknüpft. Dadurch weiß TUmatrix immer, welche Instanz es kontaktieren muss, um zu föderieren.

Jeder Raum hat ebenfalls eine Haupt-Instanz. Diese ist in der Raum-ID sichtbar.

Datensicherheit

Wie oben bereits beschrieben werden beim Nutzen von Föderation 1:1 Kopien von TU-internen Chats auf Drittanbieter-Infrastruktur abgelegt. Da bei Instanzen Dritter keine Kontrollmöglichkeiten seitens der TU Wien bestehen, auf wessen Servern die Inhalte der synchronisierten Räume gespeichert werden und wer serverseitig darauf zugreifen kann, empfehlen wir bei föderierten Räumen immer Ende-zu-Ende Verschlüsselung zu aktivieren. Somit wird verhindert, dass die Nachrichten im Klartext auf externen Servern gespeichert werden.

Bitte beachten Sie auch, dass es keine Möglichkeit gibt, ein Löschen von föderierten Inhalten zu forcieren. TUmatrix schickt zwar Löschanfragen auf Wunsch an andere Instanzen, diese können aber theoretisch ignoriert werden.

Um die Föderation mit einer Instanz zu beenden, müssen alle User dieser Instanz aus dem betreffenden Chatraum entfernt werden. Damit werden neue Inhalte nicht mehr föderiert.