diff --git a/changelog.d/18832.bugfix b/changelog.d/18832.bugfix new file mode 100644 index 000000000..bd87cacde --- /dev/null +++ b/changelog.d/18832.bugfix @@ -0,0 +1 @@ +Allow enabling MSC4108 when the stable Matrix Authentication Service integration is enabled. diff --git a/synapse/config/experimental.py b/synapse/config/experimental.py index c4181a6b0..c1631f39e 100644 --- a/synapse/config/experimental.py +++ b/synapse/config/experimental.py @@ -535,11 +535,15 @@ class ExperimentalConfig(Config): "msc4108_delegation_endpoint", None ) + auth_delegated = self.msc3861.enabled or ( + config.get("matrix_authentication_service") or {} + ).get("enabled", False) + if ( self.msc4108_enabled or self.msc4108_delegation_endpoint is not None - ) and not self.msc3861.enabled: + ) and not auth_delegated: raise ConfigError( - "MSC4108 requires MSC3861 to be enabled", + "MSC4108 requires MSC3861 or matrix_authentication_service to be enabled", ("experimental", "msc4108_delegation_endpoint"), )