diff options
author | Erik Johnston <erikj@jki.re> | 2017-03-31 14:37:09 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-03-31 14:37:09 +0100 |
commit | 142b6b4abf30dc3499f167fc140a94506d6dd653 (patch) | |
tree | eb76b513bf57c83174ce211f73407d6f0590cfee /synapse | |
parent | Merge pull request #1986 from matrix-org/matthew/enable_guest_3p (diff) | |
parent | typo (diff) | |
download | synapse-142b6b4abf30dc3499f167fc140a94506d6dd653.tar.xz |
Merge pull request #2011 from matrix-org/matthew/turn_allow_guests
add setting (on by default) to support TURN for guests
Diffstat (limited to 'synapse')
-rw-r--r-- | synapse/config/voip.py | 8 | ||||
-rw-r--r-- | synapse/rest/client/v1/voip.py | 5 |
2 files changed, 12 insertions, 1 deletions
diff --git a/synapse/config/voip.py b/synapse/config/voip.py index eeb693027b..3a4e16fa96 100644 --- a/synapse/config/voip.py +++ b/synapse/config/voip.py @@ -23,6 +23,7 @@ class VoipConfig(Config): self.turn_username = config.get("turn_username") self.turn_password = config.get("turn_password") self.turn_user_lifetime = self.parse_duration(config["turn_user_lifetime"]) + self.turn_allow_guests = config.get("turn_allow_guests", True) def default_config(self, **kwargs): return """\ @@ -41,4 +42,11 @@ class VoipConfig(Config): # How long generated TURN credentials last turn_user_lifetime: "1h" + + # Whether guests should be allowed to use the TURN server. + # This defaults to True, otherwise VoIP will be unreliable for guests. + # However, it does introduce a slight security risk as it allows users to + # connect to arbitrary endpoints without having first signed up for a + # valid account (e.g. by passing a CAPTCHA). + turn_allow_guests: True """ diff --git a/synapse/rest/client/v1/voip.py b/synapse/rest/client/v1/voip.py index 03141c623c..c43b30b73a 100644 --- a/synapse/rest/client/v1/voip.py +++ b/synapse/rest/client/v1/voip.py @@ -28,7 +28,10 @@ class VoipRestServlet(ClientV1RestServlet): @defer.inlineCallbacks def on_GET(self, request): - requester = yield self.auth.get_user_by_req(request) + requester = yield self.auth.get_user_by_req( + request, + self.hs.config.turn_allow_guests + ) turnUris = self.hs.config.turn_uris turnSecret = self.hs.config.turn_shared_secret |