This commit is contained in:
Richard van der Hoff 2019-06-27 00:37:41 +01:00
parent a0acfcc73e
commit 28db0ae537
3 changed files with 18 additions and 11 deletions

View File

@ -83,6 +83,12 @@ class SAML2Config(Config):
# so it is not normally necessary to specify them unless you need to # so it is not normally necessary to specify them unless you need to
# override them. # override them.
# #
# Once SAML support is enabled, a metadata file will be exposed at
# https://<server>:<port>/_matrix/saml2/metadata.xml, which you may be able to
# use to configure your SAML IdP with. Alternatively, you can manually configure
# the IdP to use an ACS location of
# https://<server>:<port>/_matrix/saml2/authn_response.
#
#saml2_config: #saml2_config:
# sp_config: # sp_config:
# # point this to the IdP's metadata. You can use either a local file or # # point this to the IdP's metadata. You can use either a local file or
@ -93,13 +99,14 @@ class SAML2Config(Config):
# - url: https://our_idp/metadata.xml # - url: https://our_idp/metadata.xml
# #
# # By default, the user has to go to our login page first. If you'd like to # # By default, the user has to go to our login page first. If you'd like to
# # allow IdP-initiated login, set 'allow_unsolicited: True' in an 'sp' # # allow IdP-initiated login, set 'allow_unsolicited: True' in a
# # section: # # 'service.sp' section:
# # # #
# #service:
# # sp: # # sp:
# # allow_unsolicited: True # # allow_unsolicited: True
# # #
# # The rest of sp_config is just used to generate our metadata xml, and you # # The examples below are just used to generate our metadata xml, and you
# # may well not need it, depending on your setup. Alternatively you # # may well not need it, depending on your setup. Alternatively you
# # may need a whole lot more detail - see the pysaml2 docs! # # may need a whole lot more detail - see the pysaml2 docs!
# #

View File

@ -25,7 +25,7 @@ from synapse.rest.client.v1.login import SSOAuthHandler
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
class Saml2Handler: class SamlHandler:
def __init__(self, hs): def __init__(self, hs):
self._saml_client = Saml2Client(hs.config.saml2_sp_config) self._saml_client = Saml2Client(hs.config.saml2_sp_config)
self._sso_auth_handler = SSOAuthHandler(hs) self._sso_auth_handler = SSOAuthHandler(hs)

View File

@ -194,7 +194,7 @@ class HomeServer(object):
"sendmail", "sendmail",
"registration_handler", "registration_handler",
"account_validity_handler", "account_validity_handler",
"saml2_handler", "saml_handler",
"event_client_serializer", "event_client_serializer",
] ]
@ -525,10 +525,10 @@ class HomeServer(object):
def build_account_validity_handler(self): def build_account_validity_handler(self):
return AccountValidityHandler(self) return AccountValidityHandler(self)
def build_saml2_handler(self): def build_saml_handler(self):
from synapse.handlers.saml2_handler import Saml2Handler from synapse.handlers.saml_handler import SamlHandler
return Saml2Handler(self) return SamlHandler(self)
def build_event_client_serializer(self): def build_event_client_serializer(self):
return EventClientSerializer(self) return EventClientSerializer(self)