gematik / api-ti-messenger

API specification for gematik's TI-Messenger - a messaging standard, which will enable healthcare personnel in the German healthcare sector to communicate interoperable via DSGVO-conform messaging-services. The TI-Messenger builds on matrix, the open standard for interoperable, decentralised, real-time communication over IP.
Apache License 2.0
46 stars 9 forks source link

Matrix v1.12 – Behandlung 403 Profile Responses #278

Open Johennes opened 1 month ago

Johennes commented 1 month ago

Abgespalten von #271.

Folgende Änderung soll im Hinblick auf TI-M bewertet und falls nötig behandelt werden:

  • Add 403 responses on GET /_matrix/client/v3/profile/{userId}/avatar_url and GET /_matrix/client/v3/profile/{userId}/displayname, as per MSC4170. (#1867)
  • Add 403 response on GET /_matrix/federation/v1/query/profile, as per MSC4170. (#1867)
Johennes commented 1 month ago

A_26374 in TI-M Basis beschreibt die Situationen in denen Profilabfragen mindestens erlaubt sein müssen:

A_26374 - Profilabfragen bei gemeinsamen Räumen

Der TI-M Fachdienst MUSS Profilabfragen über die folgenden Endpunkte erlauben, sofern der anfragende und der angefragte Nutzer gemeinsame Räume haben:

  • GET /_matrix/client/v3/profile/{userId}
  • GET /_matrix/client/v3/profile/{userId}/avatar_url
  • GET /_matrix/client/v3/profile/{userId}/displayname

Mit #1867 ist dies nun bereits durch die Matrix-Spec vorgegeben.

Weiterhin verbietet A_26290 in TI-M ePA auf ePA-Fachdiensten Profilabfragen in allen anderen Fällen.

A_26290 - Verbot von Profilabfragen ohne gemeinsame Räume

Der TI-M Fachdienst ePA MUSS Requests zu den folgenden Endpunkten mit einer HTTP 403 Response ablehnen, sofern der anfragende Nutzer keine gemeinsamen Räume mit dem angefragten Nutzer hat:

  • GET /_matrix/client/v3/profile/{userId}
  • GET /_matrix/client/v3/profile/{userId}/avatar_url
  • GET /_matrix/client/v3/profile/{userId}/displayname

Dies ist bis auf den nicht spezifizierten Fehlercode mit #1867 konform.

Vorschlag: A_26374 wird entfernt und in A_26290 wird neben HTTP 403 auch der Fehlercode M_FORBIDDEN vorgeschrieben.